gpt4 book ai didi

从字符串创建的 JavaScript 正则表达式 - 为什么它不起作用?

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

我的字符串是:

...
abc {
color: red;
border-color: black;
}
...

我想匹配(替换)大括号之间的所有内容。我设法编写了这样的工作正则表达式:

/\{[.\s\w:;-]*\}/ig

但是我需要从字符串创建正则表达式,但它不起作用:

new RegExp("{[.\s\w:;-]*}","ig"); // does not work

一切都在 fiddle 上:http://jsfiddle.net/3ru18Lj9/

最佳答案

您可以使用:

var re = new RegExp("\\{[\\S\\s]*\\}", "g");

在 JS 中也可以匹配换行符。

  • 构造 RegExp 对象时必须使用 \\(双重转义)。
  • 由于 JS 没有 s (DOTALL) 标志,因此使用 [\S\s] 来匹配包括换行符在内的所有字符。

PS:但是请记住,它不会处理嵌套大括号。

关于从字符串创建的 JavaScript 正则表达式 - 为什么它不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27781121/

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