我從單數形式,其轉換類名稱的功能複數形式(在西班牙!):這個函數的逆可以用正則表達式來計算嗎?
function pluralize($element) {
return preg_replace('/^([A-Za-z][a-z]*)([A-Z]|$)/', '\1s\2', $element);
}
現在我想定義這個函數的反函數。以下功能是否有效?
function singularize($plural) {
return preg_replace('/^([A-Za-z][a-z]*)(s)([A-Z]|$)/', '\1\3', $element);
}
我很擔心,因爲測試字母's'是否應該被視爲模式'[a-z]'或模式's'的非確定性使得我的「正則表達式」在技術上不是一個正則表達式。 – pyon 2011-03-14 16:39:42