对正则表达式非常陌生,并且有一个文件目录,我想在其上运行此正则表达式,但不知道如何运行。帮助会很大。
这是正则表达式:
(?<=#).*
答案1
正则表达式模式(?<=#).*
是一种零宽度正向后向模式,需要支持 PCRE(Perl 兼容正则表达式)grep
才能实现。如果您grep
支持-P
选项那么您就可以做到。
看到该模式,我认为您可能还需要-o
选择仅获取匹配的部分,以确保在所需的部分之前(?<=#)
有一个。#
.*
所以你可以递归grep
( -r
):
grep -rPo '(?<=#).*' /directory