当前位置: 首页 > 知识库问答 >
问题:

如何从shell中的字符串中提取数字[重复]

束向荣
2023-03-14

我正在尝试从shell字符串中的字符串中提取数字是“1.69.0”

string="1.69.0"

我正在 3 个不同的变量中寻找这些数字,例如 num1=1、num2=69、num3=0。

共有3个答案

羊舌承天
2023-03-14

怎么样

if [[ $string =~ ^([[:digit:]]+)[.]([[:digit:]]+)[.]([[:digit:]])$ ]]
then
  first_num=${BASH_REMATCH[1]}
  second_num=${BASH_REMATCH[2]}
  third_num=${BASH_REMATCH[3]}
else
  echo Invalid content: "'$string'" 1>&2
fi

这也将验证<code>字符串</code>确实具有所需的格式。

凤昊东
2023-03-14

在bash中,可以通过以下方式将您的版本号存储在列表中:

version="2.3.5-0041"
version_list=( ${version//[-.]/${IFS:0:1}} )
echo "Major release: ${version_list[0]}"
echo "Minor release: ${version_list[1]}"
echo "Patch level  : ${version_list[2]}"
echo "Build number : ${version_list[3]}"
温智明
2023-03-14

请参见此处:

str="1.69.0"
IFS=. read -r -a num <<<"$str"
echo "${num[0]}"
echo "${num[1]}"
echo "${num[2]}"
 类似资料:
  • 我正在写一个应用程序,根据该应用程序,你将被发送一条短信,其中包含一个重置代码,以确认你是该帐户的所有者。。但是我正在尝试以这样一种方式构建应用程序:它接收接收到的短信的广播,并仅从短信正文中获取指定的整数。我们注意到你想要重置密码的短信示例。密码重置代码是3242。,谢谢 我只想从整个短信正文中获取重置代码=3242。。谢谢

  • 我有以下格式的字符串: 让str=“url(#123456)”; 我的字符串中只有数字。它可以在任何地方。我想从上面的字符串中提取数字。 我正在使用es6。

  • 问题内容: 我想从包含数字和字母的字符串中提取数字: 我想在这里获取号码或任何其他号码。 问题答案:

  • 我有一个JavaScript字符串(例如),我只想从中得到。 我试过: 它仍然在警报中返回,我如何让它工作? 它需要适应任何长度数字附加在结束。

  • 问题内容: 我有一个Java 对象。我只需要从中提取数字。我举一个例子: 我想要 是否有仅提取数字的库函数? 感谢你的回答。在尝试这些库之前,我需要知道是否必须安装任何其他库? 问题答案: 你可以使用正则表达式并删除非数字。