gpt4 book ai didi

regex - bash中冒号后的正则表达式提取字符串

转载 作者:行者123 更新时间:2023-11-29 09:02:55 29 4
gpt4 key购买 nike

在下面的示例中,我需要提取 : 之后的字符串:

package:project.abc.def

我会在哪里得到 project.abc.def 作为结果。

我正在 bash 中尝试这个,我相信我有一个可以工作的正则表达式 :([^:]*)$

在我的 bash 脚本中,我将 package:project.abc.def 作为一个名为 apk 的变量。现在如何将使用正则表达式找到的子字符串分配给同一个变量?

package:project.abc.def 的结果将在 apk 变量中。而package:project.abc.def最初是在apk变量中吗?

谢谢!

最佳答案

这里不需要正则表达式,只是一个简单的前缀替换:

$ apk="package:project.abc.def"
$ apk=${apk##package:}
project.abc.def

## 语法是 bash 的参数扩展之一。代替 #,% 可用于修剪结尾。参见 this section有关详细信息的 bash 手册页。

一些备选方案:

$ apk=$(echo $apk | awk -F'package:' '{print $2}')
$ apk=$(echo $apk | sed 's/^package://')
$ apk=$(echo $apk | cut -d':' -f2)

关于regex - bash中冒号后的正则表达式提取字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12569123/

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