输入为(以'|'分隔文件名)
about.img|boy.gif|car.doc|xdogx.img
要求输出所有的图片文件名,但文件名中不能包含"dog",即输出的结果应
为about.img,boy.gif 我输入的表达式为
([^(|)(dog)]*)\.(img|gif)
输出为ut.img,y.gif,x.img
为什么不对呀?看来正则表达式并没有把dog当作整体来排除,而是排除文
件名中不含d,o,g三个字符的文件
about.img|boy.gif|car.doc|xdogx.img
要求输出所有的图片文件名,但文件名中不能包含"dog",即输出的结果应
为about.img,boy.gif 我输入的表达式为
([^(|)(dog)]*)\.(img|gif)
输出为ut.img,y.gif,x.img
为什么不对呀?看来正则表达式并没有把dog当作整体来排除,而是排除文
件名中不含d,o,g三个字符的文件
有一个笨办法,
第一次查找不限定那个 dog ,查到MatchCollection中之后,
在先是的时候再做一次过滤。就可以了。不过要多一道程序。
为了不致于混淆,将分隔符改成了'@',即输入为@[email protected]@[email protected]
正则表达式为@((?![^@]*dog[^.]*)[^@]*)\.(img|gif)