正则表达式POSIX并排除字符

时间:2013-12-19 09:51:49

标签: regex grep posix

我有一个关于POSIX正则表达式的问题。当我打电话给svn st只是为了看到淹没在外部洪水中的有趣信息时,我使用了SVN,这让我很烦恼:

$ svn st
X       Application/something/somewhere
X       Application/something/other_place
    X   Application/something/OTHERPALCE
    X   Application/something/yetANOTHERplace
X       Application/something/SOMEWHERE
...

所以我设计了一个正则表达式来过滤这个混乱并编写svn st | grep "^[^X]{5}",但这也过滤了其他有用的信息,而svn st | grep "^[^X]...[^X]"例如可以正常工作。为什么呢?

1 个答案:

答案 0 :(得分:1)

你的grep系列有两个问题:

  • 代表'{m,n}',您需要grep -Egrep '^[^X]\{m\}
  • 应该是^[^X]{4},而不是{5}。因为第五个字符是X,而您的grep "^[^X]...[^X]"不应该“正常”。或者你有不同的例子。在这里它什么也没输出。