一个正则匹配求助
本帖最后由 zheng10072 于 2020-6-17 13:51 编辑语句:update xxx set a=1,b =d, c=y where 1=1 and bb=a;
我想匹配到 a=1,b =d, c=y 中的a b c
请问大佬们这个正则怎么写?
((?<k>[\w\d]+)\s*=\s*(?<v>[\w\d]+)\s*,?(?=(,|where)))+
这个可以 (.*?)=\d+
试试行不行 依旧沉沉 发表于 2020-6-17 10:11
(.*?)=\d+
试试行不行
试了,不行额 \s*=\d =\d 明明很皮 发表于 2020-6-17 10:22
\s*=\d
我这个例子举的不好,字段不一定是数字{:1_890:}
update xxx set a=1,b =d, c=y where 1=1 and bb=a;
zheng10072 发表于 2020-6-17 10:27
我这个例子举的不好,字段不一定是数字
update xxx set a=1,b =d, c=y where 1=1 and bb=a;
...
最好是提供实际需求,针对实际需求来写正则比较好 zheng10072 发表于 2020-6-17 10:27
我这个例子举的不好,字段不一定是数字
update xxx set a=1,b =d, c=y where 1=1 and bb=a;
...
如果一个正则表达式完成不了,那就两个正则了,先取set -- where之间匹配出来,然后再匹配abc也可以 明明很皮 发表于 2020-6-17 10:29
最好是提供实际需求,针对实际需求来写正则比较好
实际需求是我想把update语句自动转成 select备份语句,现在就差 set 的字段提取不出来了。正则简单处理后用程序再处理可以弄出来,想顺便学习下正则
页:
[1]
2