Javascript-捕获重复序列?
假设我有一根绳子Javascript-捕获重复序列?,javascript,regex,sequence,repeat,Javascript,Regex,Sequence,Repeat,假设我有一根绳子 "Testing éééé 123" 我想去掉所有的 é 所有之前和之后的空间,只要用一个空间替换它,它就会像这样结束: "Testing 123" 如何捕捉字符序列的重复,即重复字符 é ,用于Javascript正则表达式 将序列放入一个组中,并用+重复该组-然后,您可以用单个空格替换该组(以及周围的空格): const input=“测试
"Testing éééé 123"
我想去掉所有的
é
所有之前和之后的空间,只要用一个空间替换它,它就会像这样结束:
"Testing 123"
如何捕捉字符序列的重复,即重复字符
é
,用于Javascript正则表达式 将序列放入一个组中,并用
+
重复该组-然后,您可以用单个空格替换该组(以及周围的空格):
const input=“测试é;é;é;é;é;123”;
const output=input.replace(/*(?:é;)+*/,“”);
控制台日志(输出)代码>反向引用是这种事情的朋友
正则表达式中允许反向引用,允许您匹配与第一个相同的重复模式。例如,让我们匹配您的字符实体:
/(&#x[0-9a-f]+;)\1+/i
这将匹配它找到的第一个字符实体,然后继续链接其后任何数量的相同的实体
如果要删除重复字符,甚至可以将其进一步扩展到:
/(.+)\1+/i
它将匹配任何重复字符序列(包括空格)和复合模式。但是,请注意,如果文本中有重复的字母,这将消除这些字母。当您说重复字符时,“t”也在您给出的字符串中重复。我想您应该删除所有非字母和非数字字符。