我有一个字符串36K total,TOO_MANY_NEWLINE_IN_TEXT_tABLE
。从这个字符串我只需要36
。
可能吗?
答案 0 :(得分:2)
如https://www.gnu.org/software/bash/manual/bashref.html#Shell-Parameter-Expansion所述,您可以写
echo "${foo:0:2}"
输出变量foo
的前两个字符。
答案 1 :(得分:0)
你也可以试试这个:
echo "36K total,TOO_MANY_NEWLINE_IN_TEXT_tABLE" | grep -oEi '([0-9])+'
答案 2 :(得分:0)
要从纯On Error
中的字符串中提取(可变长度)的前导数字(不使用任何外部工具),您可以在{{3}内使用=~
operator(扩展的正则表达式匹配) }:
bash
答案 3 :(得分:0)
你有分隔符;字母K
将第一个所需子字符串36
与字符串的其余部分分开。
$ str="36K total,TOO_MANY_NEWLINE_IN_TEXT_tABLE"
$ IFS=K read num rest <<< "$str"
$ echo "$num"
36