首页 > 解决方案 > lsb.acct 日志中双引号字符串的正则表达式模式

问题描述

我正在尝试查找正则表达式模式以匹配 LSF 日志文件 (lsb.acct) 中的字符串。
lsb.acct 中的行(日志条目)包含数字和字符串。数字很​​容易匹配,但我对字符串有挑战。
字符串用周围的 "" 标记,字符串中的字符 " 用另一个 " 进行转义。
示例:
来自 lsb.acct 的行: 0 90 "dsfc --copt ""-c"" nfc_pa" 0.01 "" -1 包含以下字段:

0 (number)  
90 (number)  
dsfc --copt "-c" nfc_pa (string)  
0.01  
(empty string)  
-1 (number)  

我试过 /"([^"]*)"/ 但它显然不能解决问题 - 没有捕获字符串中的转义双引号,而是将字符串剪短。
我正在考虑添加一个前瞻运算符“(?=”)尊重转义的双引号,但我不知道在哪里/如何 - 在 [] 内不起作用。
任何人都可以提示一个适当的正则表达式来匹配字符串,其中尊重“作为转义为”内部字符串?

标签: regex

解决方案


推荐阅读