首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用regex提取多个值(只有值,不需要字段名称)

用regex提取多个值(只有值,不需要字段名称)
EN

Stack Overflow用户
提问于 2022-02-03 09:14:34
回答 1查看 41关注 0票数 0

我正在尝试用regex101提取以下5个数据。

代码语言:javascript
运行
复制
[^=]+\s=\s(?<value_v2c>[^=]+)(?:varbind-delimiter|$)

↓↓↓↓

https://regex101.com/r/z06cgp/1

1整数:3

2弦:“灰色”

3弦:“红色”

4字符串:"i-13-130213-E3VM“

5字符串:“虚拟机故障转移可能有occurred_ -事件: vSphere HA重新启动虚拟机(20780030)摘要: vSphere HA重新启动虚拟摘要: vSphere HA重新启动虚拟机i-13-130213-E3VM上的主机je22v-p01bvs25.samroc.local在集群中的j22v-p01b日期: 11/24/2021 4:01:07 PM VM: i-13-130213-E3VM主机:je22v-p01bvs25.预示。本地资源池:jp p01b数据中心: jp-east-22v参数: eventTypeId = com.vmware.vc.ha.VmRestartedByHAEvent objectId = vm-147534 objectName = i-13-130213-E3VM严重性=警告“

但我不能为我的生命提取这5部分。有人能帮帮我吗?

我还需要使用相同的正则表达式来提取以下数据(Regex101)。此示例进行提取,但我需要使用上述相同的正则表达式。

↓↓↓↓

https://regex101.com/r/UNEbvi/1

提前谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-03 09:21:07

否定式字符类[^=]+将在varbind-delimiter或字符串结束时才匹配,因为该字符存在于文本中。

您可以使用非贪婪的匹配和积极的向前看:

代码语言:javascript
运行
复制
[^=]+\s=\s(?<value_v2c>.*?)(?=varbind-delimiter|$)

Regex演示

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70968550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档