通过 java 正则表达式否定一组单词
2022-09-01 22:01:05
我想使用java正则表达式否定一组单词。
说,我想否定 , , , .我写了一个正则表达式,它是.cvs
svn
nvs
mvc
^[(svn|cvs|nvs|mvc)]
有些似乎不起作用。
我想使用java正则表达式否定一组单词。
说,我想否定 , , , .我写了一个正则表达式,它是.cvs
svn
nvs
mvc
^[(svn|cvs|nvs|mvc)]
有些似乎不起作用。
试试这个:
^(?!.*(svn|cvs|nvs|mvc)).*$
如果它不包含 svn、cvs、nvs 或 mvc 之一,这将匹配文本。
这是一个类似的问题:C# 正则表达式匹配不包含某个字符串的字符串?
没那么简单。如果你想否定一个单词,你必须把它拆分成字母,并否定每个字母。
所以要否定
/svn/
你必须写
/[^s][^v][^n]/
因此,您要过滤掉的内容将变成非常丑陋的正则表达式,我认为使用此正则表达式是更好的主意
/svn|cvs|nvs|mvc/
当你测试你的字符串时,只需否定结果。
在JS中,这看起来更不像那样:
!/svn|cvs|nvs|mvc/.test("this is your test string");