Regex 匹配两个标识符之间的所有内容

Regex 匹配两个标识符之间的所有内容,regex,Regex,我正在尝试匹配标识符\之间的短语,如果单词NULL存在于其中 正则表达式尝试: /\\(.*?)\\/g /\\(NULL)(.*?)\\/g 字符串: id,name,age,score\n1,Jack,NULL,12\n17,Betty,28,11\cvdvdfv\dfsdfsdf 到目前为止,标识符“”之间的所有文本都是选中的,如果我尝试匹配空单词,它不会做任何事情 正则表达式尝试: /\\(.*?)\\/g /\\(NULL)(.*?)\\/g 如果您有任何想法,我将不胜感激

我正在尝试匹配标识符
\
之间的短语,如果单词
NULL
存在于其中

正则表达式尝试:

/\\(.*?)\\/g
/\\(NULL)(.*?)\\/g
字符串:

id,name,age,score\n1,Jack,NULL,12\n17,Betty,28,11\cvdvdfv\dfsdfsdf
到目前为止,标识符“”之间的所有文本都是选中的,如果我尝试匹配空单词,它不会做任何事情 正则表达式尝试:

/\\(.*?)\\/g
/\\(NULL)(.*?)\\/g
如果您有任何想法,我将不胜感激

/\\[^\\]*NULL[^\\]*\\/g
如果您确实想在LF、换行符之间找到一整行字符串
NULL
,请将
\\
替换为
\n
,将
[^\\]
替换为
[^\n]

/\n.*NULL.*\n/g
或者,您可以只使用
/.*NULL.*/g

详细信息

  • \\
    -反斜杠
  • [^\\]*
    -0个或更多字符(反斜杠除外)
  • NULL
    -
    NULL
    string
  • [^\\]*
    -0个或更多字符(反斜杠除外)
  • \\
    -反斜杠
在这种具体情况下,您可以使用:

函数解决方案{
返回S.split('\n').filter(x=>!/\bNULL\b/.test(x)).join('\n');
}
未定义

log(解决方案('header,header\nANNUL,invalled\nnull,NILL\nnull,NULL'))
工作正常。如果可以的话,我可以问你另一个场景吗?如果短语位于
header,header\nANNUL,invalled\nnull,NILL\nnull,NULL
@AdeN的末尾,我如何识别NULL出现的短语,然后使用一个替代词,
/\\[^\\\]*NULL[^\\\]*(?:\\\\\\\\$)/g
/\n.*NULL.*(:\n$$)/g
,或者正如我所说的那样-
/.*NULL./g
。关闭,但不完全关闭,我已经运行了它,它捕获了中间短语@AdeN regexr is not trust,显示了真实的代码示例,对JavaScript使用jsfiddle.net,对许多语言使用ideone.com。@AdeN
函数解决方案{return S.split('\n')。filter(x=>!x.includes('NULL')).join('\n');}
,或
函数解决方案{return S S S.split('\n')).filter(x=>!/\bNULL\b/.test(x)).join('\n');}