我正在研究正则表达式,我被难住了。到目前为止,这是我的过程......
我下载了这个文件。
wget http://www.mieliestronk.com/corncob_lowercase.txt
mv corncob_lowercase.txt words.txt
我想要全部 3 个字母的单词...
grep '^...$' words.txt
这确实找到了“abe”
grep '^abe.$' words.txt
这没有找到“abe”
grep '^abe$' words.txt
这确实在 Arch Linux 附带的库中找到了“abe”。
grep '^abe$' /usr/share/dict/cracklib-small
我被这个问题难住了。
答案1
$ file corncob_lowercase.txt
corncob_lowercase.txt: ASCII text, with CRLF line terminators
DOS 行结尾可能是问题的根源。 CR 至少出于某些目的而被视为一个字符。
在 ing 之前先运行dos2unix
, 或tr -d '\r'
, grep
。