Commit adea255320863a8a1d8987f4020a449815dd3de3
1 parent
805479e7
feat: 正则修改
Showing
2 changed files
with
31 additions
and
9 deletions
src/views/basic/askTestQuestion/components/wrongQuestionDialog.vue
... | ... | @@ -553,10 +553,21 @@ export default { |
553 | 553 | // 正则表达式: |
554 | 554 | const regexs = [/[0-9]+[.)]/, /(\d+分)/, /^(\d{1,3})/]; |
555 | 555 | |
556 | - regexs.forEach((regex) => { | |
557 | - input = input.replace(regex, ""); | |
558 | - }); | |
559 | - // 如果没有匹配,直接返回原字符串 | |
556 | + // 使用正则表达式匹配并处理输入字符串 | |
557 | + for (const regex of regexs) { | |
558 | + const match = input.match(regex); | |
559 | + if (match) { | |
560 | + if (regex === regexs[2]) { | |
561 | + // 如果匹配第三条规则,使用substring截取返回结果的长度加1 | |
562 | + const matchLength = match[0].length; | |
563 | + return input.substring(matchLength + 1).trim(); | |
564 | + } else { | |
565 | + // 如果匹配第一条或第二条规则,替换匹配的部分 | |
566 | + input = input.replace(regex, ""); | |
567 | + } | |
568 | + } | |
569 | + } | |
570 | + | |
560 | 571 | return input; |
561 | 572 | }, |
562 | 573 | ... | ... |
src/views/basic/askTestQuestion/wrongQuestion.vue
... | ... | @@ -592,13 +592,24 @@ export default { |
592 | 592 | this.getClassList(); |
593 | 593 | }, |
594 | 594 | processString(input) { |
595 | - // 正则表达式 | |
595 | + // 正则表达式: | |
596 | 596 | const regexs = [/[0-9]+[.)]/, /(\d+分)/, /^(\d{1,3})/]; |
597 | 597 | |
598 | - regexs.forEach((regex) => { | |
599 | - input = input.replace(regex, ""); | |
600 | - }); | |
601 | - // 如果没有匹配,直接返回原字符串 | |
598 | + // 使用正则表达式匹配并处理输入字符串 | |
599 | + for (const regex of regexs) { | |
600 | + const match = input.match(regex); | |
601 | + if (match) { | |
602 | + if (regex === regexs[2]) { | |
603 | + // 如果匹配第三条规则,使用substring截取返回结果的长度加1 | |
604 | + const matchLength = match[0].length; | |
605 | + return input.substring(matchLength + 1).trim(); | |
606 | + } else { | |
607 | + // 如果匹配第一条或第二条规则,替换匹配的部分 | |
608 | + input = input.replace(regex, ""); | |
609 | + } | |
610 | + } | |
611 | + } | |
612 | + | |
602 | 613 | return input; |
603 | 614 | }, |
604 | 615 | ... | ... |