awk 和 WinGrep 中的正则表达式
所以我正在寻找这样的模式:
尺寸='0x0'
在日志文件中,但我只对大尺寸(4 位或更多)感兴趣。 下面的正则表达式在 EditPadPro 中工作得很好(顺便说一句,不错的工具),
size='0x[0-9a-fA-F]{4,}
但是相同的正则表达式在 awk 中不起作用 - 似乎重复 {4,}
搞砸了。 与 WinGrep 相同 - RegEx 专家有什么想法吗? 谢谢!
So I'm looking for a pattern like this:
size='0x0'
In a log file, but I'm only interested in large sizes (4 digits or more). The following regex works great in EditPadPro (nice tool BTW)
size='0x[0-9a-fA-F]{4,}
But the same RegEx does not work in awk - seems like the repetition {4,}
is messing it up. Same with WinGrep - any idea from the RegEx gurus? Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
事实上,您可以使用 awk,但需要注意。
如下页所述,您需要一个特殊的命令行选项 (--re-interval) 才能使其正常工作,因为间隔表达式 ({4,}) 不在标准中:
http://kansai.anesth.or.jp/gijutu/awk/gawk/gawk_28.html< /a>
所以最后,你会想要看起来像这样的东西:
这将打印出匹配的行。
You can in fact use awk, with a caveat.
As mentioned on the following page, you need a special command-line option (--re-interval) to make it work out, since the interval expression (the {4,}) is not in the standard:
http://kansai.anesth.or.jp/gijutu/awk/gawk/gawk_28.html
So in the end, you'll want something that looks like:
This will print out the lines that match.
我不知道 {4,} 语法有什么优雅的替代品,但如果它不能在您想要的环境中工作,您可以诉诸这个丑陋的黑客:
希望这有帮助!
亚当
I don't know of any elegant alternatives to the {4,} syntax, but if it is not working in your desired environment you could resort to this ugly hack:
Hope this helps!
Adam
不要忘记最后一个撇号。
Don't forget the last apostrophe.