Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript-捕获重复序列?_Javascript_Regex_Sequence_Repeat - Fatal编程技术网

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”也在您给出的字符串中重复。我想您应该删除所有非字母和非数字字符。