[英]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.