Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 创建跨越多行的正则表达式?_Javascript_Regex - Fatal编程技术网

Javascript 创建跨越多行的正则表达式?

Javascript 创建跨越多行的正则表达式?,javascript,regex,Javascript,Regex,我看了那些旗子,没找到我要找的东西。基本上,如果我正在搜索: aba 它应该完全忽略新行,因此以下内容是有效的: a b a a b a ab a 编辑:我的目标是做一些比在正则表达式中的每个字符后面加上\s?更优雅的事情(假设它是一个常量,如果它是一个范围,我不知道会发生什么) 在每个字母之间放置空格。这是一个有趣的问题。对于这种情况,我使用另一种方法 首先,我删除所有行结束字符: someText=someText.replace(/(\r\n |\n |\r)/gm,“

我看了那些旗子,没找到我要找的东西。基本上,如果我正在搜索:

aba
它应该完全忽略新行,因此以下内容是有效的:

a
b
a

a


b

a

ab



a
编辑:我的目标是做一些比在正则表达式中的每个字符后面加上
\s?
更优雅的事情(假设它是一个常量,如果它是一个范围,我不知道会发生什么)

在每个字母之间放置空格。这是一个有趣的问题。对于这种情况,我使用另一种方法

  • 首先,我删除所有行结束字符:

    someText=someText.replace(/(\r\n |\n |\r)/gm,“”)

  • 使用普通正则表达式


  • 简单案例

    对于你的例子,确切的字母是aba,我同意

    a\s*b\s*a
    
    (?:[a-z]\s*){1,5}
    

    更复杂的案例

    在注释中,您询问一个表达式,例如
    [a-z]{1,5}
    ,您可能希望在字母之间插入潜在空格。对于这一点,我同意

    a\s*b\s*a
    
    (?:[a-z]\s*){1,5}
    

    请参见

    如果合适,您可以删除所有空白。从字符串中删除换行符-在运行正则表达式之前,这不是一个选项吗?它可以工作,我可能最终会这样做,我想知道是否有一种简单的方法可以用正则表达式来完成它。
    str.replace(/\s+/g',).match(/aba/g)
    如果正则表达式是这样的话会发生什么呢:[a-z]{1,5}@Bloodcount我想这很倒霉。@Bloodcount,我不知道你可能遇到的所有情况,但是对于你在这里建议的情况,你可以这样做:
    /([a-z]\s*){1,5}/
    ,实际上我没有考虑过。可能会很好地结束工作,谢谢。@ridgerunner天哪,大错误,谢谢。我还没有醒来