我有一个文本文件,我想在文件中以小写字母开头的每个单词之前插入一个像house这样的单词,使用 sed。我已经尝试过了,但它不起作用:
sed "s/(^[a-z]+| [a-z]+)/house (^[a-z]+| [a-z]+)/g" textfile.
我有这条线,你可以吗?
sed -r 's/\b[a-z]\w*\b/HOUSE &/g' file
例如:
kent$ echo "yes No yES NO y_e_s _no"|sed -r 's/\b[a-z]\w*\b/HOUSE &/g'
HOUSE yes No HOUSE yES NO HOUSE y_e_s _no
POSIX 友好版本:
sed -e 's/\([^[:alpha:]]\)\([a-z][[:alpha:]]*\)/\1house \2/g'
-e 's/^\([a-z]\)/house \1/' input