最初の数字を探して残りの文字列を返します。

最初の数字を探して残りの文字列を返します。

Bashを使用して文字列の最初の数字を見つけて、文字列の残りの部分を削除するにはどうすればよいですか?

たとえば、次の文字列があります。

SomeText.MoreText.Whatever.1.2.3.4-branch.ext

これで終わりたいと思います-

1.2.3.4-branch.ext

数字を見つける方法を提案するいくつかの答えが見つかりました(例:この問題)、しかし、文字列の一部が見つかり返されません。

ベストアンサー1

grep一致する部分(-o)のみを抽出するには、を使用します。

grep -o '[0-9].*'
  • [0-9]最初の数字と一致し、.*残りの数字と一致します。

例:

$ grep -o '[0-9].*' <<<'SomeText.MoreText.Whatever.1.2.3.4-branch.ext'
1.2.3.4-branch.ext

おすすめ記事