regex 正则表达式帮助匹配直到空格与数字

eufgjt7s  于 2023-10-22  发布在  其他
关注(0)|答案(1)|浏览(186)

我试图构建正则表达式来提取某些字段,但其中一个字段(Type)可能有多个空格。所以我一直在寻找匹配,直到它找到带有digit(\s\d)的空间。
我的正则表达式,但它不工作的第三个样本日志。附regex 101截图

Added:\s+(?<Type>[^\d]+)\s(?P<Transaction_ID>\d+)\s[^\(]+\((?P<Status>\w+)

样品 Package

[2023-08-31T12:02:40,758] [async-1 ] INFO  Added: ABC XYX CCC 265333655 IR_TEST (VERIFIED)
[2023-08-31T12:02:41,192] [async-1 ] INFO  Added: XX_Rates 265332643 IR_TEST (VERIFIED)
[2023-08-31T12:02:43,452] [async-1 ] INFO  Added: XX_Rates_4_XX 26533555 IR_TEST (VERIFIED)

wlwcrazw

wlwcrazw1#

您可以使用

Added:\s+(?<Type>\S.*?)\s+(?P<Transaction_ID>\d+)[^(]*\((?P<Status>\w+)

参见regex demo

  • 详情 *:
  • Added:-文字字符串
  • \s+-一个或多个空格
  • (?<Type>\S.*?)-组“类型”:一个非空白字符,然后是除换行符字符以外的任何零个或多个字符,尽可能少
  • \s+-一个或多个空格
  • (?P<Transaction_ID>\d+)-组“Transaction_ID”:一个或多个数字
  • [^(]*-(以外的零个或多个字符
  • \(- a (字符
  • (?P<Status>\w+)-组“状态”:一个或多个单词字符。

相关问题