0

我有一个包含这样文本的文件...

0x8a1d4099 dfg-gw2
0x8da88e90 FVG-GW3

我想编写一个 bash 脚本来查看文件,但只显示第一行,而不是第二行。我只需要忽略前 11 个字符,并且只匹配后面的文本(如果它有小写字符)。

4

2 回答 2

1

尝试

^.{11}[^a-z]*[a-z]+

从概念上讲,此模式在行首跳过 11 个字符,匹配任意数量的非小写字符,最终匹配至少 1 个小写字符。用您不希望在匹配行中出现的字符来补充第一个字符类。

于 2013-08-19T14:12:44.713 回答
0

像这样的模式应该有效:

^.{11,}[a-z].*$

或者,如果您的引擎支持 Unicode 字符类:

^.{11,}\p{Ll}.*$

或者,如果您的引擎支持前瞻,您可以使用以下之一:

^.{11}(?=.*[a-z]).*$
^.{11}(?=.*\p{Ll}).*$
于 2013-08-19T14:12:59.217 回答