/* 批次改檔名軟體 Ken Rename 支援正規表示法取代
*
*/
有一堆檔名如下
XXXX_1_of_15.txt
XXXX_10_of_15.txt
XXXX_11_of_15.txt
XXXX_12_of_15.txt
.....
XXXX_2_of_15.txt
XXXX_3_of_15.txt
XXXX_4_of_15.txt
........
XXXX_9_of_15.txt
因為照檔名排序就亂掉 想改成所有數字都照二位數即可自動排序
例如 01 02 03 ..... 10 11 12 .....15
所以腦筋動到正規表示法來 目前做法很爛 其實用二次處理
先前處理把不相關字元去掉 變成
1.txt
10.txt
11.txt
12.txt
.....
2.txt
3.txt
4.txt
....
9.txt
然後不管副檔名 只取代檔名一位數 ^(\d)$ 變成 0$1 就變成
01.txt
02.txt
....
12.txt
上面偷用了開頭結尾技巧 請問有沒有辦法一步就只取代一位數數字檔名 前面加上0開頭
因為數字位數 有優先比較的順序 雖然可以用 (1[0-9])|([1-9]) 找到中間數字字元
用$1存二位數數字 $2存一位數數字
但取代的正規表示不會寫 用0$2會連二位數數字都改成0.txt