可以做这样的事情吗?
var pattern = /some regex segment/ + /* comment here */
/another segment/;
还是我必须使用新的RegExp()
语法并连接一个字符串?我更喜欢使用文字,因为代码既不言而喻又简洁。
这是如何在不使用正则表达式文字语法的情况下创建正则表达式的方法。这使您可以在字符串变成正则表达式对象之前进行任意的字符串操作:
var segment_part = "some bit of the regexp";
var pattern = new RegExp("some regex segment" + /*comment here */
segment_part + /* that was defined just now */
"another segment");
如果您有两个正则表达式文字,则实际上可以使用此技术将它们连接起来:
var regex1 = /foo/g;
var regex2 = /bar/y;
var flags = (regex1.flags + regex2.flags).split("").sort().join("").replace(/(.)(?=.*\1)/g, "");
var regex3 = new RegExp(expression_one.source + expression_two.source, flags);
// regex3 is now /foobar/gy
它不仅仅是将表达式一和两个作为文字字符串而不是文字正则表达式,还比较罗word。
问题内容: 如何创建与变量连接的正则表达式模式,如下所示: 谢谢 问题答案: 在字符串文字中,是一个退格字符。将正则表达式放入字符串文字中时,您需要再转义一轮: (在这种情况下,您也不需要。)
问题内容: 我有一个字符串A,想测试另一个字符串B是否不属于其中。这是一个非常简单的正则表达式,其结果随后可以反转。 我可以做: 然后将其反转,如下所示: 我的问题是,我需要在正则表达式中执行此操作,而不要使用它们的结果。就像是: (不起作用) 换句话说:正则表达式应该测试是否存在,并在这种情况下返回true。 JavaScript有可能吗? 问题答案: 尝试: (简短)说明: 因此,用简单的英语
问题内容: 我目前正在将Web应用程序代码从PHP移植到JS。 我对此正则表达式有疑问。从PHP 这样使用 如何将其转换为在JS上工作? 先感谢您 问题答案: 没什么特别的。PHP regex语法与JavaScript中的语法非常相似: 您可以从 MDN的 本手册中找到有关JavaScript 中正 则表达式的更多信息:https : //developer.mozilla.org/en- US/
问题内容: 我遇到过这种模式 并从http://gskinner.com/RegExr/站点了解到= =匹配字母数字字符和下划线,并且=匹配先前的令牌1次或多次(不确定确切的含义)。 如何将连字符添加到列表中? 我试过了但是没用,我没有任何匹配… 问题答案: 您需要一个字符类,用表示。然后可以在字符类中使用它,并可以添加更多字符: 不过请小心,如果您添加更多字符以进行匹配。连字符减号必须在类中的
问题内容: var ss= “ ddd”; var arr= ss.match( /<pre.*?<\/pre>/gm ); alert(arr); // null 我希望可以拾取PRE块,即使它跨越换行符也是如此。我以为’m’标志可以做到。才不是。 所以解决方案是: 有谁不那么神秘吗? 编辑:这是重复的,但是由于它比我的更难找到,因此我不会删除。 它建议作为“多行点”。我仍然不明白的是为什么不起
问题内容: 我想在JavaScript中创建一个方法,并且我认为使用正则表达式是最简洁的方法。但是,我不知道如何将变量传递给正则表达式。我能做到这一点已经将取代所有的实例有。 但是我想做这样的事情: 但是显然这只会替换文本…所以如何将这个变量传递给我的正则表达式字符串? 问题答案: 代替使用语法,可以构造一个新的RegExp对象: 您可以通过这种方式动态创建正则表达式对象。然后,您将执行以下操作: