【问题标题】:Regex Look Around Look Behind second , Look Ahead :正则表达式环顾四周看第二,向前看:
【发布时间】:2020-07-16 21:02:20
【问题描述】:

给定这个字符串:

U7PG2,f09fc22cdb13,v4.0.80.10875: hostapd:ath1: STA f2:9f:c2:2d:db:13 驱动程序:Sead AUTH addr=cc:44:63:0c:25:64 status_code=0

我正在尝试匹配 v4.0.80.10875

如果我使用这个环视语句: (?

如何告诉它从字符串中的第二个“,”而不是第一个开始往后看?

【问题讨论】:

  • 使用捕获组,^(?:[^,]*,){2}([^:]+),见demo,只需获取组1值。
  • 这行得通,但是对于我使用的 Graylog 软件,它使用匹配作为结果,而不是捕获组。所以在我的情况下,我需要匹配只是 v4.0.80.10875

标签: regex regex-lookarounds


【解决方案1】:

如果字符串中总是有 v,你应该可以使用: (?<=,)(v[^:]+)

【讨论】:

  • 宾果游戏,看起来确实总是有一个 v。不错的捕获。
猜你喜欢
  • 2018-06-29
  • 1970-01-01
  • 2011-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多