我试图找到一个字符串的子串。
如果我有字符串try-30/16
,我想获得30
字符串。
所以我写了下一篇:
n=${"'$b'":'-':'/'}
其中$ b是我在此命令之前分配的变量。它给出了下一个:
糟糕的替代。
我怎么做?
答案 0 :(得分:4)
试试这个。
b="try-30/16"
n=${b##*-}
n=${n%%/*}
echo $n
答案 1 :(得分:2)
$ n=${b%/*}
$ n=${n#*-}
$ echo $n
30
答案 2 :(得分:2)
你也可以这样做:
[[ $b =~ [^-]+-([0-9]+) ]] && echo "${BASH_REMATCH[1]}"
<强>输出:强>
30