gpt4 book ai didi

bash - 用于shell脚本中模式匹配的正则表达式并提取匹配部分

转载 作者:行者123 更新时间:2023-12-04 16:17:15 24 4
gpt4 key购买 nike

希望你在做。
我需要 shell 脚本中的正则表达式帮助。
输入是:PM_path='SubNetwork=IMS,SubNetwork=IMS,MeContext=R9NEXRERNFVCSS01_PS' **PM_path='SubNetwork=IMS,SubNetwork=IMS,MeContext=R9NEXRERNFVCSS01_PS'
我想要的输出为:
R9NEXRERNFVCSS01_PS 这就是最后一个等号之后的所有内容。
现在我已经实现了它如下:

if [[ $PM_path =~ MeContext=([a-zA-Z0-9_]+) ]]; then  
NODE_NAME=${BASH_REMATCH[1]}
echo "the value is matched";
所以在这里我检查了 MeContext,这是 PM_path 的一部分。
我想让它更通用,比如选择出现在最后一个等号之后的所有内容。
请帮忙。
提前致谢。

最佳答案

您可以使用 grep在这里,与 GNU grep请尝试以下。只需使用 grep的 -o 和 -P 选项(启用 PCRE 正则表达式)。然后在正则表达式中匹配所有内容,直到最后一次出现 =并使用 \K丢弃匹配的部分和 .*然后它将打印变量中的其余值。

echo "$PM_path" | grep -oP '.*=\K.*'

关于bash - 用于shell脚本中模式匹配的正则表达式并提取匹配部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67445227/

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