[英]How to grep a string in a file that begins and ends with two specific characters?
我有一个 URL 文件,我想 grep 具有参数的 URL。
我能够 grep URL 包含以“?”开头的子字符串并以“=”结尾:
grep '?[a-z0-9]*=' foobar.txt
我如何还 grep 以“&”开头并以“=”结尾的子字符串? 我试过了:
grep -E '?[a-z0-9]*=|&[a-z0-9]*=' foobar.txt
但是,这是行不通的。
另外,对于其中包含“_”或“-”的参数,如何在正则表达式中包含特殊字符?
利用
grep -E '\?[^?=]*=|&[^&=]*=' foobar.txt
你 select POSIX ERE 和-E
,这就是为什么问号需要 escaping。
你匹配之间的任何东西?
和=
与[^?=]*
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.