gpt4 book ai didi

regex - 如何使用 grep 和正则表达式从字符串中提取数字

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:55:12 65 4
gpt4 key购买 nike

我制作了一个文件的猫,并在其上应用了一个带有正则表达式的 grep

cat /tmp/tmp_file | grep "toto.titi\[[0-9]\+\].tata=55"

命令显示以下输出

toto.titi[12].tata=55

是否可以修改我的 grep 命令以提取数字 12 作为命令的显示输出?

最佳答案

您可以使用其正则表达式功能在纯 BASH 中获取它:

s='toto.titi[12].tata=55'
[[ "$s" =~ ^toto.titi\[([0-9]+)\]\.tata=[0-9]+$ ]] && echo "${BASH_REMATCH[1]}"
12

你也可以使用sed:

sed 's/toto.titi\[\([0-9]*\)\].tata=55/\1/' <<< "$s"
12

或使用 awk:

awk -F '[\\[\\]]' '{print $2}' <<<"$s"
12

关于regex - 如何使用 grep 和正则表达式从字符串中提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20770933/

65 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com