我有一个适合我的正则表达式。我在以下网站上检查过:https : //www.regex101.com/
(?<=.log:)[^;]*
Run Code Online (Sandbox Code Playgroud)
不幸的是,当我尝试将它与 grep 一起使用时它不起作用。我试图做以下事情:
cat foo.log | grep -E '(?<=.log:)[^;]*'
Run Code Online (Sandbox Code Playgroud)
我知道有匹配项,因为我在此模式之后创建并测试了我的正则表达式。-E 参数也有效,因为正则表达式*.*工作正常。
以下是我的目标文件中的一些示例行:
201407010300.log:2014-07-01 03:00;10.112.64.250;2;1145439;ULC IBM
201407010100.log:2014-07-01 01:00;10.112.64.250;2;1145216;ULC IBM
201407010100.log:2014-07-01 01:00;10.112.64.250;3;968549;ULC Primeline
Run Code Online (Sandbox Code Playgroud)
你有什么建议为什么这不起作用?