我不明白为什么雷杰普:
[^\d\s\w,]匹配字符串:
"leonardo,davinci"这是我的考验:
$ echo "leonardo,davinci" | egrep '[^\d\w\s,]'
leonardo,davinci虽然这项工作如预期的那样:
$ echo "leonardo,davinci" | egrep '[\S\W\D]'
$ 非常感谢
发布于 2015-08-28 19:10:00
这是因为egrep没有预定义的集合\d、\w、\s。因此,在他们面前插上斜线就是在字面上与他们相匹配:
leonardo,davinci
echo "leonardo,davinci" | egrep '[^a-zA-Z0-9 ,]'真的,不匹配。
如果安装了它,则可以使用pcregrep:
echo "leonardo,davinci" | pcregrep '[^\w\s,]'https://stackoverflow.com/questions/32278083
复制相似问题