1. ホーム
  2. string

[解決済み] Bashで部分文字列を抽出する

2022-03-18 16:06:28

質問

という形式のファイル名がある場合 someletters_12345_moreleters.ext 5桁の数字を抽出して変数に格納したい。

つまり、x個の文字で構成されるファイル名があり、その両側にアンダースコアが1つずつある5桁の文字列があり、さらにx個の文字で構成されるファイル名があるとします。 この5桁の数字を変数に取り込みたいのです。

このようなことを実現するために、さまざまな方法があることにとても興味があります。

どのように解決するのか?

使用方法 カット :

echo 'someletters_12345_moreleters.ext' | cut -d'_' -f 2

より汎用的に

INPUT='someletters_12345_moreleters.ext'
SUBSTRING=$(echo $INPUT| cut -d'_' -f 2)
echo $SUBSTRING