我想澄清有关javascript正则表达式的两个疑问。


是否可以在主表达式中嵌套第二个OR表达式,如下所示:(v|b|c)

/(value1|value2|value3|(v|b|c)alue4)/

是否可以将行分成相同的表达式,如下所示(以便于阅读):

/(value1|
  value2|
  value3|
  (v|b|c)alue4)
/



非常感谢

最佳答案

您为什么不自己尝试呢?

例子1

/(value1|value2|value3|(v|b|c)alue4)/.test("calue4")


-> true


例子2

/(value1|
  value2|
  value3|
  (v|b|c)alue4)
/.test("calue4")


->  Uncaught SyntaxError: Invalid regular expression: missing /




如果您确实想使用该多行样式,则可以始终使用字符串串联和RegExp对象:

new RegExp("(value1|" +
           "value2|" +
           "value3|" +
           "(v|b|c)alue4)").test("calue4")


-> true

07-24 17:42