入力する:
$ echo -e 'AAAART5530408XXXX\nAAAAZE6530408XXXX\nAAAART12345678XXXX'
AAAART5530408XXXX
AAAAZE6530408XXXX
AAAART12345678XXXX
$
出力:
$ echo -e 'AAAART5530408XXXX\nAAAAZE6530408XXXX\nAAAART12345678XXXX' | sed -e 's/\(AAAA[A-Z]\{2\}[0-9]\{7\}\)XXXX/\n\1/g'
AAAART5530408
AAAAZE6530408
AAAART12345678XXXX
$
どのように拡張できますか?
sed -e 's/\(AAAA[A-Z]\{2\}[0-9]\{7\}\)XXXX/\n\1/g'
オプションで許可されるように sed oneliner
sed -e 's/\(AAAA[A-Z]\{2\}[0-9]\{8\}\)XXXX/\n\1/g'
それも8という数字ですか? (7つではありません)1sedのみ利用可能ですか?
答え1
構成は、\{7\}
「最小一致と最大一致」の単純なケースです。あなたの場合は次のとおりです。\{m,n\}
m
n
sed -e 's/\(AAAA[A-Z]\{2\}[0-9]\{7,8\}\)XXXX/\n\1/g'
たぶん単純なものかもしれません。
sed -s 's/XXXX//g'
あなたの場合はそれで十分ですか?