This commit is contained in:
zzjc1234 2024-09-10 17:41:46 +08:00
parent 4f2c57a0ee
commit 775aa71c37
3 changed files with 155 additions and 14 deletions

View File

@ -1,7 +1,7 @@
import json import json
import re import re
# 读取 JSON 文件内容 # 读取 joj3_result.json 文件内容
with open("joj3_result.json", "r", encoding="utf-8") as file: with open("joj3_result.json", "r", encoding="utf-8") as file:
json_data = file.read() json_data = file.read()
@ -11,18 +11,19 @@ data = json.loads(json_data)
# 定义正则表达式以提取 diff 代码块 # 定义正则表达式以提取 diff 代码块
diff_pattern = re.compile(r"```diff\n(.*?)\n```", re.DOTALL) diff_pattern = re.compile(r"```diff\n(.*?)\n```", re.DOTALL)
# 提取所有 diff 代码块 # 遍历 "run" 的 results
diff_blocks = [] for run in data:
if run["name"] == "run":
for item in data: results = run["results"]
if "results" in item: for result_index, result in enumerate(results):
for result in item["results"]:
comment = result.get("comment", "") comment = result.get("comment", "")
matches = diff_pattern.findall(comment) matches = diff_pattern.findall(comment)
diff_blocks.extend(matches)
# 处理 \n 符号并打印 diff 代码块 if matches:
for i, diff in enumerate(diff_blocks): print(f"Result {result_index + 1} diff blocks:")
# 将 \n 替换为实际换行符 for i, diff in enumerate(matches):
formatted_diff = diff.replace("\\n", "\n") # 将 \n 替换为实际换行符
print(f"Diff block {i+1}:\n{formatted_diff}\n") formatted_diff = diff.replace("\\n", "\n")
print(f"```diff\n{formatted_diff}\n```\n")
else:
print(f"Result {result_index + 1}: the same\n")

View File

@ -1 +1,25 @@
[{"name":"compile","results":[{"score":0,"comment":""}]},{"name":"run","results":[{"score":100,"comment":"executor status: run time: \\d+ ns, memory: \\d+ bytes"},{"score":100,"comment":"executor status: run time: \\d+ ns, memory: \\d+ bytes"}],"force_quit":false}] [
{
"name": "compile",
"results": [
{
"score": 0,
"comment": ""
}
]
},
{
"name": "run",
"results": [
{
"score": 100,
"comment": "executor status: run time: \\d+ ns, memory: \\d+ bytes"
},
{
"score": 100,
"comment": "executor status: run time: \\d+ ns, memory: \\d+ bytes"
}
],
"force_quit": false
}
]

116
ret.md Normal file
View File

@ -0,0 +1,116 @@
Result 1 diff blocks:
```diff
-
-
```
Result 2 diff blocks:
```diff
- 1024 2048
```
Result 3 diff blocks:
```diff
- asdfljsdfklasdfjklasdfjjkl
- 1024 2048
- asdfjksdfjkl
```
Result 4 diff blocks:
```diff
-
-
-
+ 1024
```
Result 5 diff blocks:
```diff
- 1024 2048
-
+ 1024
```
Result 6 diff blocks:
```diff
- asdfljsdfklasdfjklasdfjjkl
- 1024 2048
- asdfjksdfjkl
-
+ 1024
```
Result 7 diff blocks:
```diff
- 1024 2048
- asdfjksdfjkl
- asdfljsdfklasdfjklasdfjjkl
-
+ 1024
```
Result 8 diff blocks:
```diff
- 1024 2048
- asdfjksdfjkl
- asdfljsdfklasdfjklasdfjjkl
-
+ 1024
```
Result 9 diff blocks:
```diff
-
-
-
+ jklasdfklasdfjklf
```
Result 10 diff blocks:
```diff
- 1024 2048
-
+ jklasdfklasdfjklf
```
Result 11 diff blocks:
```diff
- jklasdfklasdfjklf asdfhklasdfjl cvsdlfkdjsfklv
- 1024 2048
- asdfjkl asdfkljdaslasdfjkl asdfjkl
- 1024 2048
- psdfklj
-
+ jklasdfklasdfjklf
```
Result 12 diff blocks:
```diff
- asdfljsdfklasdfjklasdfjjkl
- 1024 2048
- asdfjksdfjkl
-
+ jklasdfklasdfjklf
```
Result 13 diff blocks:
```diff
- 1024 2048
- asdfjksdfjkl
- asdfljsdfklasdfjklasdfjjkl
-
+ jklasdfklasdfjklf
```
Result 14 diff blocks:
```diff
- 1024 2048
- asdfjksdfjkl
- asdfljsdfklasdfjklasdfjjkl
-
+ jklasdfklasdfjklf
```