加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

regex – 如何使用grep获取任何刚刚`name =`后?

发布时间:2020-12-15 09:24:28 所属栏目:安全 来源:网络整理
导读:我坚持试图grep任何刚刚name =后,只包括空格和字母数字。 例如。: name=some value here 我得到 some value here 我完全是新手,在这里,以下grep匹配一切,包括名称=。 grep 'name=.*' filename 任何帮助深表感谢。 正如详细 here,你想要一个正的lookbeh
我坚持试图grep任何刚刚name =后,只包括空格和字母数字。

例如。:

name=some value here

我得到

some value here

我完全是新手,在这里,以下grep匹配一切,包括名称=。

grep 'name=.*' filename

任何帮助深表感谢。

正如详细 here,你想要一个正的lookbehind子句,如:
grep -P '(?<=name=)[ A-Za-z0-9]*' filename

-P使grep使用Perl方言,否则你可能需要转义圆括号。您还可以,如别处所述,附加-o参数以仅打印匹配的内容。括号中的部分指定您需要字母数字和空格。

使用正lookbehind子句的优点是“name =”文本不是匹配的一部分。如果grep突出显示匹配的文本,它将只突出显示字母数字(和空格)部分。 -o参数也不会显示“name =”部分。并且,如果你转换到另一个程序,如sed,可能捕获文本,并做一些事情,你不会捕获“name =”部分,虽然你也可以通过使用捕获的父母。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读