僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
sedで選択。
$ echo foo%bar%baz | sed 's/%[a-z]*//g' foo $ echo foo%bar%baz| sed 's/[a-z]*%//g' baz
awkの方が簡単かも。
$ echo foo%bar%baz | awk -F% '$0=$1' foo $ echo foo%bar%baz | awk -F% '$0=$NF' baz
やりなおす。
最初だけ残す。
$ echo foo%bar%baz%qux%quux | sed 's/%[a-z]\+//g' foo
最初以外を残す。
$ echo foo%bar%baz%qux%quux | sed 's/^[a-z]\+%//' bar%baz%qux%quux
最初と最後を残す。
$ echo foo%bar%baz%qux%quux | sed 's/%[a-z%]\+%//' fooquux
最初でも最後でもないものを残す。
$ echo foo%bar%baz%qux%quux | sed 's/^[^%]\+%//; s/%[^%]\+$//' bar%baz%qux
最後以外を残す。
$ echo foo%bar%baz%qux%quux | sed 's/%[a-z]\+$//' foo%bar%baz%qux
最後を残す。
$ echo foo%bar%baz%qux%quux | sed 's/[a-z]\+%//g' quux
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。