Javascript 正则表达式匹配&引用;x倍

Javascript 正则表达式匹配&引用;x倍,javascript,regex,expression,Javascript,Regex,Expression,我只想匹配符号“!”的前x次。我查看了正则表达式备忘单,但找不到相关的示例 我当前的正则表达式: [!]{1} 例如,如果要匹配前三个“!”符号并替换为空字符串: 输入:“!!dd!!dd!!” 输出:“dd!dd!!”您应该使用{3}精确地使用3次,{3,5}使用3到5次,{2,}超过2次。您可以这样做: 捕获模式: [!]([^!]*?)[!]([^!]*?)[!]([^!]*?)(.*) 置换模式: $1$2$3$4 它说的是基本的 [!]捕获 ([^!]*?)捕获下一个字符之前的

我只想匹配符号“!”的前x次。我查看了正则表达式备忘单,但找不到相关的示例

我当前的正则表达式:

[!]{1}
例如,如果要匹配前三个“!”符号并替换为空字符串:

输入:
“!!dd!!dd!!”


输出:
“dd!dd!!”

您应该使用
{3}
精确地使用3次,
{3,5}
使用3到5次,
{2,}
超过2次。您可以这样做:

捕获模式:

[!]([^!]*?)[!]([^!]*?)[!]([^!]*?)(.*)
置换模式:

$1$2$3$4
它说的是基本的

  • [!]
    捕获
  • ([^!]*?)
    捕获下一个字符之前的所有内容,不包括

您需要提及您正在使用的技术。如果您使用的是sed,它看起来像“s/^([^!]*)!([^!]*)!([^!]*)!([^!]*)!(*)$/\1\2\3\4/”。“([^!]*)”表示捕获所有非“!”字符集。如果没有正则表达式,即使用简单的解析器,您的问题可能更容易解决。您误解了问题。请看OP希望发生的示例