2016-11-09 8 views
1

bashで特定の文字まで文字列を削除するにはどうしたらいいですか? 例:Bash:文字列から特定の文字までを削除する

"ananas1kiwi2apple1banana2tree" 

は次のようになりなければならない。

"apple1banana2tree" 

ありがとうございました!

+0

この場合、文字「2」の最初の出現は、 –

答えて

5

あなたはbashパラメータ展開を使用して、2件までのサブストリングを削除する場合:

${var#*2} 
  • #は左から非欲張りマッチを行い、貪欲

  • #*2一致する##を使用し、変数から最初に2を破棄するvar

例:

$ var='ananas1kiwi2apple1banana2tree' 
$ echo "${var#*2}" 
apple1banana2tree 
2

純粋bashshell parameter expansionを使用します。

$ string="ananas1kiwi2apple1banana2tree" 
$ newString="${string#*2}" 
$ printf "%s\n" "$newString" 
apple1banana2tree 
関連する問題