61 lines
1.5 KiB
Python
61 lines
1.5 KiB
Python
|
|
#!/usr/bin/env python3
|
|||
|
|
# -*- coding: utf-8 -*-
|
|||
|
|
"""
|
|||
|
|
修复JavaScript语法错误
|
|||
|
|
移除多余的对象结构
|
|||
|
|
"""
|
|||
|
|
|
|||
|
|
import re
|
|||
|
|
|
|||
|
|
def fix_js_syntax():
|
|||
|
|
"""修复JavaScript语法错误"""
|
|||
|
|
try:
|
|||
|
|
# 读取文件
|
|||
|
|
with open('src/mocks/resumeInterviewMock.js', 'r', encoding='utf-8') as f:
|
|||
|
|
content = f.read()
|
|||
|
|
|
|||
|
|
# 修复模式1: 移除多余的对象结束符
|
|||
|
|
# 模式:] \n } \n ] \n },
|
|||
|
|
# 应该是:] \n } \n },
|
|||
|
|
content = re.sub(
|
|||
|
|
r'(\s*\]\s*\}\s*\]\s*)(\},)',
|
|||
|
|
r'\1,',
|
|||
|
|
content,
|
|||
|
|
flags=re.MULTILINE
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
# 修复模式2: 移除孤立的 },
|
|||
|
|
content = re.sub(
|
|||
|
|
r'(\s+\}\s*\]\s*)\s+\},\s*(\{)',
|
|||
|
|
r'\1,\n \2',
|
|||
|
|
content,
|
|||
|
|
flags=re.MULTILINE
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
# 更具体的修复:找到问题的模式并修复
|
|||
|
|
# 查找 " ]\n },\n {" 的模式,应该是 " },\n {"
|
|||
|
|
content = re.sub(
|
|||
|
|
r'(\s+\]\s*\}\s*)\n\s+\},\n(\s+\{)',
|
|||
|
|
r'\1,\n\2',
|
|||
|
|
content,
|
|||
|
|
flags=re.MULTILINE
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
# 写回文件
|
|||
|
|
with open('src/mocks/resumeInterviewMock.js', 'w', encoding='utf-8') as f:
|
|||
|
|
f.write(content)
|
|||
|
|
|
|||
|
|
print("JavaScript语法错误修复完成!")
|
|||
|
|
return True
|
|||
|
|
|
|||
|
|
except Exception as e:
|
|||
|
|
print(f"修复失败: {e}")
|
|||
|
|
import traceback
|
|||
|
|
traceback.print_exc()
|
|||
|
|
return False
|
|||
|
|
|
|||
|
|
def main():
|
|||
|
|
fix_js_syntax()
|
|||
|
|
|
|||
|
|
if __name__ == "__main__":
|
|||
|
|
main()
|