2

正規表現と sed を使い始めたばかりですが、次のような問題があります。

echo "abc2def3ghi" | sed 's/^\(.*\)[0-9]\(.*\)$/"&" \1\2/i'  

最初の桁 (この場合は 2 ですが、任意の 1 桁で削除できます) を削除しようとしていますが、結果として次のようになります。

"abc2def3ghi" abc2defghi

これを達成するにはどうすればよいですか?

ありがとう。

4

2 に答える 2

2

これを試して :

sed 's/[0-9]//1' file.txt

の数字1s///1N 番目の出現を表します

于 2013-03-27T23:22:14.717 に答える
1

sed消極的/非貪欲な量指定子がないため、0 個以上の非数字を具体的に一致させる必要があります。

^\([^0-9]*\)[0-9]\(.*\)$
于 2013-03-27T23:23:16.873 に答える