gpt4 book ai didi

javascript - 在大文本中添加数字正则表达式

转载 作者:行者123 更新时间:2023-12-03 08:25:05 26 4
gpt4 key购买 nike

我有一个大文本,例如

Word 3 : 3 Word
bla-bla
....
Word (10%) 2 : 4 (15%) wORD
BLA-BLA
Word 4 : 1 Word
bla-bla
....
...

我需要将 (10%) 放在 Word 41 Word 之间,例如字 (10%) 2 : 4 (15%) wORD 这个。所以最终的样子一定是

Word (10%) 3 : 3 (10%) wORD
bla-bla
Word (10%) 2 : 4 (15%) wORD
bla-bla
Word (10%) 4 : 1 (10%) Word
vla-bla
..
..
..

我尝试/(.*?)\s*(\d+)\s*:\s*(\d+)\s*\(\d+%\)\s*(.*)\s/gm EXAMPLE但它只找到 Word (10%) 4 : 1 (10%) Word 这样的模式。

有人知道怎么做吗?

最佳答案

以下正则表达式

/^(\w+) +(\d+ : \d+) +(\w+)/gm

将匹配

  • (\w+)一个或多个单词字符 ( [a-zA-Z0-9_] ),由第一组捕获并由 $1 引用
  • [ ]+一个或多个空格
  • (\d+ : \d+)一个数字,一个文字 " : "另一个数字,由第二组捕获并由 $2 引用
  • [ ]+一个或多个空格
  • (\w+)一个或多个单词字符,由第三组捕获并由 $3 引用

代码

var regex = /^(\w+) +(\d+ : \d+) +(\w+)/gm;
var replacement = "$1 (10%) $2 (10%) $3";
var text = `Word 3 : 3 Word
bla-bla
....
Word (10%) 2 : 4 (15%) wORD
BLA-BLA
Word 4 : 1 Word
bla-bla
....
...`;
var result = text.replace( regex, replacement);

document.write("<pre>" + result + "</pre>");

关于javascript - 在大文本中添加数字正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33588712/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com