-1
所以基本上我編輯我的正則表達式代碼爲一個大規模的MP3重命名工具,並希望有一個代碼來利用每一個一個數字後面的字母。例如,2nite>2Nite和221B>221B但保持> 和第2>第2不變。正則表達式:我怎麼能大寫第一個字母,緊跟在一個數字除了第一,第二,第三等
所以基本上我編輯我的正則表達式代碼爲一個大規模的MP3重命名工具,並希望有一個代碼來利用每一個一個數字後面的字母。例如,2nite>2Nite和221B>221B但保持> 和第2>第2不變。正則表達式:我怎麼能大寫第一個字母,緊跟在一個數字除了第一,第二,第三等
你不說你正在使用什麼語言。下面是你在Perl做什麼
s/(?<=\d)(?!(?:st|nd|rd|th)\b)([[:lower:]])/\u$1/g
其中
(?<=\d)
看後面的位數(?!(?:st|nd|rd|th)\b)
向前看不 「ST」 或 「第二」 或...
\b
是一個單詞邊界標記,所以1st
保持不變但1stop
變成1Stop
([[:lower:]])
小寫字母(捕獲)\u$1
,上殼體在第一捕獲的文本的第一個字母括號
謝謝。我沒有使用任何語言。這是使用foobar2000腳本的mp3tag,如果有幫助的話。編輯:我如何使用這個來查找然後替換? –
瞭解您的工具使用正則表達式的「風味」很重要。有基本的,擴展的,perl兼容的。沒有「標準」正則表達式。 –
我只需要編寫正則表達式代碼。之前和之後的斜線字符是不必要的,它非常詳細,我可以$ 1 $ lower($ 2),所以我會假設擴展。 –