Regex 数学表达式的正则表达式
我正在尝试对bash脚本中的用户输入运行比较/搜索。我希望用户能够在函数中键入,该函数是计算和返回。。。我怎样才能知道组在字符串中的位置,这样我就可以使事情井然有序Regex 数学表达式的正则表达式,regex,bash,shell,unix,scripting,Regex,Bash,Shell,Unix,Scripting,我正在尝试对bash脚本中的用户输入运行比较/搜索。我希望用户能够在函数中键入,该函数是计算和返回。。。我怎样才能知道组在字符串中的位置,这样我就可以使事情井然有序 calculate 7 + 3 calculate 9.37 / 7.21 calculate 5 100 * 2.21 calculate 2783.34 – 25 calculate -g hypotenuse 2.34 5.1 #-g argument for geometric calculate -p 34.34
calculate 7 + 3
calculate 9.37 / 7.21
calculate 5 100 * 2.21
calculate 2783.34 – 25
calculate -g hypotenuse 2.34 5.1 #-g argument for geometric
calculate -p 34.34/343 #-p argument for precision
calculate -g hypotenuse -p 2.34 5.1 #geometric and precision
编辑:我想我指的是“代币”
例如:我知道的事情:
([-])([0-9])([.]*)([0-9]{1,})定义整数或实数
([0-9]{1,})定义整数
如何检索标记在字符串中的位置,以及如何检索运算符?如上所述,您可以使用它执行算术运算。这可能是最好的解决方案,因为bash本身只能进行整数运算 Neverneless如果希望获得浮点数的整数和小数部分,可以使用以下代码:
a=123.456 # an example
a_int=${a%.*}
a_fr=${a#*.}
在您的示例中,每个“组”都表示为单个参数,即:
print_args() {
for a in "$@"; do
echo "arg=\"$a\""
done
}
print_args 9.37 / 7.21
将打印
arg="9.37"
arg="/"
arg="7.21"
欢迎来到stackoverflow!不清楚你在问什么。你试过什么?你能在这里定义一下你所说的“团体”是什么意思吗?谢谢你欢迎我!也许你只是需要?+1来弄清楚OP可能想问什么。由于问题中提到了“几何”和“精度”,因此可能值得一提的是加载“mathlib”和
scale
变量!很抱歉给您带来了困惑-谢谢您的扩展!