2013-03-27 45 views
1

使用dired-omit文件,我有一個正則表達式來查找(和過濾)所有點文件。 問題在於,我想保留。和..在文件列表中。查找所有點文件,但不是。或..正則表達式

這是代碼我目前有:

(add-hook 'dired-mode-hook 
    (lambda() 
    (setq dired-omit-files 
     (concat dired-omit-files "\\|^\\..+$")))) 

我怎麼能它細化到輸出什麼,我希望?

回答

1

我的答案很簡單:

^\\.\\w.*$ 

說明:一個字符串以 ''後跟一個WORD,後跟0個或更多的任意符號。 WORD不包括'。'性格,並確保你會讓你''。和'..'條目。

如果您想了解更多關於正則表達式,你可以閱讀部分的Emacs手冊這裏:http://emacswiki.org/emacs/RegularExpression

來測試你的正則表達式的另一個真正的好方法是正則表達式生成器,是建設成emacs的。 M-x regexp-builder。你可以進入你的*scratch*緩衝區並寫下一些文件名。一旦你有幾個,請調用正則表達式構建器,它會突出顯示與正則表達式匹配的所有內容。

1

這應該滿足您的需求:

^([.][^.].*|[^.]+[.].*)$ 

開始或者以點,其次是任何字符,但一個點,或與任何字符,但點的名稱,包含至少一個點。

+0

我認爲emacs中的點字符應該使用\\轉義。我無法弄清楚哪個是哪個。此外,似乎這個正則表達式也適合一個名爲「this.file」的文件,該文件位於中間的某個位置,而不是在開頭。 – CrimsonKing 2013-03-27 22:21:33

相關問題