当字符串包含方括号时,RegEx中断
RegEx breaking when string contains square brackets
我一直在使用这个正则表达式来提取小胡子{{Hello}}内容:
/{{'s*['w'.]+'s*}}/g
当小胡子字符串包含方括号时,它正在下降。我一直在摆弄它很长一段时间没有效果,谁能建议一个调整,将意味着它将匹配{{Hello[0]}} ?
我是你的哈克贝利:
'{'{(.*?)'}'}
我总是使用出色的http://www.regexr.com/
来破解这些。那么,为了解释为什么这在这种情况下有效:
- 首先,考虑
'{'{
-我们转义(通过使用反斜杠'转义',下一个字符不会被表达式计算,例如,它只是寻找该字符)我们正在寻找的第一个字符(花括号)。 - 然后重复该操作以获得第二个大括号。
- 接下来,我们打开括号
(
,使'group'捕获多个令牌-所以我们可以抓取括号内的所有内容。 -
.
匹配除换行符以外的任何字符。 -
*
匹配零个或多个前面的令牌(在本例中除了换行符之外的任何令牌) -
?
使前面的量词"懒惰",因为它将尽可能少地匹配。 - 关闭
)
组。 - 最后以两个转义字符
'}'}
结束
相关文章:
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- Regex代码只允许一个空格
- Regex匹配除“”之外的所有字符;.js”;
- RegExp:匹配Javascript中除regex值之外的所有内容
- Javascript RegEx validator
- 使用regex的jquery keydown绑定不会验证撇号和句点
- 高亮显示与数组字符串一起使用时文本插件中断
- 制作一个regex来验证只有一个数字的字符串
- RegEx JavaScript:数字后的符号提取
- AngularJS ui路由器html5模式中断路由
- PHP和Javascript之间的Regex差异
- 链接和youtube的Javascript和regex
- 包含圆括号的JavaScript Regex模式
- 相当复杂的Regex
- 递归函数中断
- 如何在ng regex中包含qutoes+双引号
- 在javascript中,I'我很难弄清楚如何让regex只替换捕获而不替换匹配
- Regex提取URL返回数组的一部分;未定义”;
- Javascript-在文本区域中断,但不在段落中中断
- 当字符串包含方括号时,RegEx中断