使用正则表达式提取多值(仅值,不需要字段名)



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

[^=]+s=s(?<value_v2c>[^=]+)(?:varbind-delimiter|$)

↓↓↓↓

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

[1]整数:3

[2]字符串:";灰色";

[3]字符串:";红色";

[4]字符串:";i-13-130213-E3VM";

[5]字符串:";虚拟机故障切换可能已发生_-事件:vSphere HA重新启动虚拟机(20780030参数:eventTypeId=com.vmware.vc.ha.VmRestartedByHAEvent对象Id=vm-147534对象名称=i-13-130213-E3VM严重性=警告">

但我无法提取我生命中的那部分。有人能帮帮我吗?

我还需要使用相同的正则表达式来提取以下数据(regex101(。这个示例进行提取,但我需要使用上面相同的正则表达式。

↓↓↓↓

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

提前感谢!!!

被否定的字符类[^=]+直到varbind-delimiter或最后一部分的字符串末尾才会匹配,因为该字符存在于文本中。

你可以使用一个非贪婪的匹配与积极的前瞻性代替:

[^=]+s=s(?<value_v2c>.*?)(?=varbind-delimiter|$)

Regex演示

相关内容

最新更新