gpt4 book ai didi

javascript - JS中使用RegExp去除某种类型的连续字符

转载 作者:行者123 更新时间:2023-11-28 04:36:31 25 4
gpt4 key购买 nike

我需要一个正则表达式来删除特定的连续字符。

例如。我可以使用

var filtered = oldString.replace(/[^[\w]\s]|(.)(?=\1)/gi, ""); 

如果我需要删除任何连续的字符。

我可以使用。

var filtered = oldString.replace(/[^[\w]\s]|(,|;|\s)(?=\1)/gi, ""); 

如果我需要去掉连续的逗号、分号和空格字符。

但我真正需要的是使像 ;, 这样的字符串看起来像 ;

,,,,, ; 这样的字符串看起来像单个逗号 ,.

所以我需要删除某种类型的任何连续字符。

我该怎么做?

最佳答案

您似乎想要匹配与相同模式匹配的字符 block ,但仅保留第一个匹配的字符。使用

.replace(/(\W)\W*/g, '$1')

请参阅regex demo

模式将匹配:

  • (\W) - 非单词字符(并捕获到组 1 中,以便替换模式中的 $1 反向引用可以恢复此字符)
  • \W* - 0+ 个非单词字符(它们将从字符串中删除)

请注意,这是一种通用方法,在大多数情况下,应进一步调整模式。

关于javascript - JS中使用RegExp去除某种类型的连续字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44156343/

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