繁体   English   中英

正则表达式-除结尾以外不包含某些字符

[英]Regex - Does not contain certain characters except for end

我需要匹配任何以“&”结尾但中间不包含“,”或“&”的行。

a b c &

a, b, c, &

a & b, c &

a & b

我能够通过使用以下方法获得部分成功:

^(?!.*,).*&.*$

而且我都:

a b c &
a & b

所以我尝试了

^(?!.*(,|&)).*&.*$

我无法得到任何匹配。 如何修改我的正则表达式,这样我只能得到abc & 我正在使用.NET

似乎应该通过使用否定的字符类来获得所需的内容,例如

^[^,&]*&\s*$

使用多行标志。

您可以用\\r?代替\\s* \\r? 如果您不想允许revo建议使用尾随空格。

如果要处理多行文本(而不是逐行测试),则还可能需要将换行符添加到否定的字符类( [^,&\\n] )中,以避免重叠的匹配项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM