用于在Javascript中删除多个空格的特殊字符
我正在从文本中删除多个空格。我不明白逗号在“2”之后是什么意思。上面说只有{2}可以找到所有的双打用于在Javascript中删除多个空格的特殊字符,javascript,Javascript,我正在从文本中删除多个空格。我不明白逗号在“2”之后是什么意思。上面说只有{2}可以找到所有的双打 return newsong.replace(/\s{2}/g, ' ') return newsong.replace(/\s{2,}/g, ' ') 非常混乱….逗号匹配2个或更多的空格,允许您从字符串中删除空格,如: part1 part2 还有。如果在这个正则表达式上使用第一个正则表达式(没有逗号),它将看到: part1<SPACE><SPACE>&
return newsong.replace(/\s{2}/g, ' ')
return newsong.replace(/\s{2,}/g, ' ')
非常混乱….逗号匹配2个或更多的空格,允许您从字符串中删除空格,如:
part1 part2
还有。如果在这个正则表达式上使用第一个正则表达式(没有逗号),它将看到:
part1<SPACE><SPACE><SPACE><SPACE><SPACE>part2
第1部分第2部分
删除前两个空格,然后删除下两个空格,留下
part1<SPACE>part2
第1部分第2部分
最后一个空格与\s{2}
不匹配,将保留。如果您使用逗号,它只会一次将它们全部删除,因为它匹配2个或更多的空格
此外,如果在逗号后加上另一个数字,则可以设置要匹配的最大空格数。范围元序列由两部分组成,最小匹配和最大匹配
{n, m}
其中,n
为最小值,m
为最大值
当只指定一个时,它被视为最小值和最大值,例如:x{2}
将匹配两个x'e
忽略最小值时,它将与0匹配。。最大时间,例如:x{,2}
将匹配零、一或两个x'e
如果省略最大值,它将匹配最小值或更多次,例如:
x{2,}
将匹配两个或多个x'e谢谢您的回答!我还想删除单词。为什么这不起作用?替换(/WUB{1,}/g,“”)@范围选择器中的AlexeyTseitlin将只处理其前面的字符或组。使用/(?:WUB){1,}/g
或者在您的情况下,因为它是1个或多个:/(?:WUB)+/g
请注意,它不会删除空格,而是将它们替换为单个空格。您的示例将以3个空格而不是1结束,而不是以1而不是0结束。我还想删除单词。为什么这不起作用?替换(/WUB{1,}/g,“”);