簡體   English   中英

正則表達式按姓氏字母順序將文件分類到文件夾中?

[英]Regex to sort files into folders alphabetically by surname?

我試圖找到一種方法來編寫正則表達式,以根據姓氏將文件按字母順序排序到單獨的文件夾中。 文件名均以名稱開頭,但寫有“名字姓氏”,因此我需要一個表達式,該表達式將與第一個分詞“-”之前的姓氏的第一個字母匹配。 例如

 John M. Allen - job 00 - october.txt

應該與Allen中的“ A”以及所有其他以“ A”開頭的姓氏匹配,因此我可以使用文件重命名器將其移至名為“ A”的文件夾中

我是正則表達式的新手,不知道該如何做。 我正在使用JS中的File Renamer 6.0.1。

嘗試這個:

\b[A-Z](?=[a-z]+\s-\s)

看到這個。

這可能看起來有點復雜,但如果您理解所有內容,就不是那么復雜了(\\ b表示匹配單詞邊界,只需使用Google'word boundary regex'即可了解更多信息)。 ?=是一個前瞻性斷言。 我添加了一個單詞邊界和更多詳細信息,以避免出現不匹配的情況,假設您在10月10日之前使用了A,如果我不使用[az] +而不是\\ w +,那么這也將匹配不是你想要的。

考慮到它不能用於兩個姓氏或任何時髦的標點符號,它並不是特別可靠,但是無論如何這應該會讓您入門:

(\w)\w+(?<=\w) - 

姓氏的第一個字母位於第一個捕獲組中; 根據您使用的語言,您需要弄清楚如何引用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM