【发布时间】:2019-12-15 21:35:33
【问题描述】:
我正在尝试打印 /usr/share/dict/words 中包含两个“w”或两个“z”的单词。单词中的“w”或“z”在哪里并不重要。 我试过了,但它不能正常工作:
cat /usr/share/dict/words | grep ".+([wz]).+\1"
cat /usr/share/dict/words | grep ".*([wz]).*\1"
cat /usr/share/dict/words | grep "z{2}|w{2}"
cat /usr/share/dict/words | grep "z.*z|w.*w"
cat /usr/share/dict/words | grep "z.?z|w.?w"
cat /usr/share/dict/words | grep "z[^z].*z|w[^w].*w"
【问题讨论】:
-
如果你有一个正则表达式,你会想使用 egrep
-
我不同意近距离投票者的观点,并希望他们能提供比敷衍的按钮点击更完整的解释。
-
您只想要
"contains two "w" or two "z"还是"contains two (or more) "w" or two (or more) "z"? (您与grep "z.*z|w.*w"关系密切,可以用作grep 'z.*z\|w.*w') -
only "包含两个 "w" 或两个 "z" : "pizza" OK "pizzazz" not OK "awkward" OK