[a-zA-Z]
文字列の最初の文字の前のすべての文字を削除したいと思います。たとえば、
#121Abc
-->Abc
%Ab#c
-->Ab#c
Ab#c
-->Ab#c
Abc
-->Abc
1Abc
-->Abc
1 21Abc
-->Abc
1^1 Abc
-->Abc
注:アルファベット以外のすべての文字には、印刷されない文字が含まれています。
bashツールを使用できますか?
ベストアンサー1
そしてawk
:
awk 'sub(/^[^[:alpha:]]*/, "")' infile
そしてsed
:
sed 's/^[^[:alpha:]]*//' infile
注:行にアルファベット文字が含まれていない場合は、出力に空白行があります。この行印刷をスキップして入力から空白行をスキップするには、次のようにする必要があります。
awk 'sub(/^[^[:alpha:]]*/, "") && NF' infile
awk 'sub(/^[^[:alpha:]]*/, "") && /./' infile
sed 's/^[^[:alpha:]]*//;/./!d' infile
または同じアプローチgrep
(ありがとう。こんにちは)
grep -o '[[:alpha:]].*' infile