テキストファイルがあり、ファイル内の小文字で始まるすべての単語の前に、sedを使用してhouseのような単語を挿入したいと思います。私はこれを試しましたが、機能していません:
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