javascript - 正则表达式如何匹配不带字符的单词

标签 javascript regex

如何匹配 {anyWord} 之类的内容,但排除开头带有下划线的任何内容,例如:{_doNotMatchThis}

输入:

hi there {matchPlease}{andThis}, just doing some regex {_notThis}

想要的比赛:

{matchPlease}
{andThis}

如果没有排除起始 {_ 的条件,我知道这个正则表达式模式效果很好:\{\w+\}

我尝试将其修改为 \{!_\w+\},基本上是说,“匹配以 { 开头的任何内容,然后有一个_开头,然后以}结尾的单词”。谢谢。

最佳答案

这个怎么样?

/\{([^_].*?)\}/

根据评论中的 @Geo 和 @nhahtdh,如果您只想要文字:

/\{([^_]\w*)\}/

关于javascript - 正则表达式如何匹配不带字符的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15507374/

相关文章:

javascript - Webpack 没有给环境变量赋值

javascript - 按 2 个日期之间的日期过滤数组中的数组

java - 为正则表达式生成所有有效值

javascript - 仅当包含的字符串长度大于 X 时才替换

javascript - jQuery:如何设置一个带有 Preventdefault 的 "a"标签和一个没有的标签?

JavaScript Three.js 3D引擎: how to make object bigger by 20%?

javascript - FIREBASE - 引用错误 : Cannot access 'auth' before initialization

javascript - 正则表达式或 jquery 在特定字符后拆分字符串

python - 在带加量词的字符范围后,负前瞻不起作用

java - 可以编写 Perl/Java/etc 正则表达式来匹配十进制(非)质数吗?