Regex获取列

问题描述 投票:0回答:1

给出以下;分隔的字符串:


a;; z
toy;d;hh 
z;
d;23
;;io;
b y;b;12

a;b;bb;;;34

我希望获取第一列不是db ytoy的任何行的第三列(如果存在)。>

所以期望的结果是


 z

io

bb

到目前为止,我有这个正则表达式:

^(?!(d|b y|toy);([^;\r\n]*);([^;\r\n]*)).*\R

如此demo中所示

据我所见,至少有两个问题:

第一列中包含d的第五行是匹配的,不应该

比赛不返回分组

任何帮助将不胜感激

鉴于以下内容;分隔字符串: z玩具; d; hh z; d; 23 ;; io; b y; b; 12 a; b; bb ;;; 34我希望得到第一列不是d,b y或toy的任何行的第三列(如果存在)。因此...

regex pcre regex-lookarounds
1个回答
0
投票

您可以使用此正则表达式来匹配第三列中的所需值:

© www.soinside.com 2019 - 2024. All rights reserved.