我是一个逗号分隔的混合字段的日志数组,我想从中取出第9个字段(" - "),也许可以转义双引号(只有 - 然后) :
Home_TE,-2.8,1,"-",-,-,-,1,"-",-,-,-,"-",1,-,"-","-",-,-,MIL_TT
有没有人有这方面的纯正则表达式解决方案?
答案 0 :(得分:0)
最简单的形式:
^(?:(?:[^,]*,){8})"?([^,"]*)
捕获子模式([^,"]*)
捕获第9个字段,从双引号中删除。
尝试一次匹配多行时,需要修饰符m
(多行)和g
(全局)。
当逗号嵌入前9个字段中的任何一个字段时,将失败。