在 Emacs Dired 模式下,我想标记名称以Addr
but开头的目录和文件不是Addr
包含名称的文件。我正在使用 RE-Builder 来测试我的正则表达式,但对克拉 ( ^
) 字符没有运气。我知道它可能意味着行首,也可能意味着不是。
我最终想%g
在 Dired 模式下使用,但我使用 RE-Builder,因为它可以让我看到我的正则表达式的作用。宏观rx
现在超出了我的能力范围。
^Addr.*
不做我想做的事。这个^
字符显然意味着“不是”而不是“行首”。Addr.*
还找到了类似的名字blahAddrblah
,这不是我想要的。
我需要什么正则表达式技巧?
答案1
^Addr
Addr
在行的开头匹配。该字符^
仅在位于开头时表示“不”字符类,eg[^abc]
表示“不是a
,b
或 的任何一个字符c
”。
我认为你的问题是你正在使用 command %g
,它按文件内容匹配文件,但你打算使用%m
,它按文件名称匹配文件。%m ^Addr RET
标记名称以 . 开头的文件Addr
。