0

我有一个包含许多行的文本文件,如下所示:

IMG_0106.JPG    y:\2004_05_23_bern basel\       2004_05_23
IMG_0107.JPG    y:\2004_05_23_dortmund\         2004_05_23
IMG_0108.JPG    y:\2004_05_25_paris\            2004_05_24
IMG_0110.JPG    y:\2004_05_25_paris\            2004_05_25

我想检查在同一行中是否有双日期,在哪里没有。

第 1,2,4 行有一个日期匹配。
第 3 行没有日期匹配 (2004_05_25 != 2004_05_24)

我知道如何找到双线,但在这种情况下我不知道如何在同一行中找到双线。
有人可以帮帮我吗?

4

2 回答 2

1

这应该有效:

grep '\([0-9]\{4\}_[0-9]\{2\}_[0-9]\{2\}\).*\1'
于 2013-04-05T09:16:24.237 回答
1

这个:g带有正则表达式的命令会给你那些日期重复的行,你可以在这些行上做你的操作:

:g/\v(\d{4}_\d{2}_\d{2}).*\1

如果您只想找到它们,(或使用 hlsearch 突出显示它们),只需执行/sameRegex

于 2013-04-05T09:16:38.783 回答