コロンで区切られたキー値のペアを抽出するために "expr match"を取得する方法は?

コロンで区切られたキー値のペアを抽出するために "expr match"を取得する方法は?

与えられた: myvar="present-value: 1"、私はexpr match "$myvar" '\([0-9]\)'出力を期待します1。ただし、空白を印刷し、不一致を示すゼロ以外のステータスコードで終了します。

どのように一致させることができますか?

答え1

これは私にとって効果的です

myvar="present value: 4"
expr match "$myvar" '.*\([0-9]\)'

出力:

4

答え2

マニュアルexperページによると、.REGEXはSTRINGの両端に固定されているため、部分文字列と一致することはできません。matchanchored pattern match of REGEXP in STRING

関連情報