首页 新闻 搜索 专区 学院

sql语句转正则表达式

0
悬赏园豆:200 [已解决问题] 解决于 2017-05-17 11:55
where (LogText like '%ERROR%'
         OR LogText like '%WARN%'
         OR LogText like '%FAIL%'
         OR LogText like '%STOP%')
         AND (LogText not like 'CHECKDB')
         AND (LogText NOT LIKE '%without error%')
         AND (LogText NOT LIKE '%\ERRORLOG%')
         AND (LogText NOT LIKE '%0 errors%')
         AND (LogText NOT LIKE '%error log has been reinitialized%')
         AND (LogText NOT LIKE '%Login failed for user%')



各位前辈们 这个是 sql的一个字段匹配要求, 改成正则怎么写呢,google 翻遍 好几天了搞不定,有前辈能指点一二么,感激不尽啊

大概意思就是  匹配 含有error 字串的行  但是 改行中又不能出现 CHECKDB  或者 without 等这样的字符串。

 

 
六渣的主页 六渣 | 初学一级 | 园豆:24
提问于:2017-05-03 12:03
< >
分享
最佳答案
2

^((?<!without|checkdb).)*error\b[^\n]*(?=\r\n)

 

收获园豆:200
Yu | 专家六级 |园豆:12950 | 2017-05-05 09:03

请问 这是什么工具?

小眼睛老鼠 | 园豆:2774 (老鸟四级) | 2017-05-05 17:05

@小眼睛老鼠: http://www.ultrapico.com/Index.htm

Yu | 园豆:12950 (专家六级) | 2017-05-05 17:16

@Yu: 谢谢

小眼睛老鼠 | 园豆:2774 (老鸟四级) | 2017-05-05 17:18

我试了一下 好像还是不行,不过 还是非常感谢提供这么好的工具  分给你  谢谢哈

六渣 | 园豆:24 (初学一级) | 2017-05-17 11:54
其他回答(2)
0

老老实实写匹配吧,这样不好吗,非要搞个正则表达式,另外我想知道你这样做的目的是什么,只要能达到目的就行。

龙行天涯 | 园豆:1821 (小虾三级) | 2017-05-03 12:43

客户的设备 没有权限执行这个sql语句,我只能用监控软件 写正则去匹配目录下的日志文件啊

支持(0) 反对(0) 六渣 | 园豆:24 (初学一级) | 2017-05-03 13:46

@六渣: 匹配出来以后是要做什么呢

支持(0) 反对(0) 龙行天涯 | 园豆:1821 (小虾三级) | 2017-05-04 12:50
0

正则你不一定非要一个写完啊,前面写匹配的,匹配到了再对匹配行做二次匹配(匹配那些not like)的,这样不行么?

Daniel Cai | 园豆:10374 (专家六级) | 2017-05-03 14:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册