我想弄清楚如何在字符串中找到正則表達式匹配的範圍。搜索需要既是案件又是變音符號不敏感。我一直在使用這樣的嘗試:正則表達式匹配的範圍在Swift中忽略大小寫和變音符號
"München".rangeOfString(
"[mno][tuv][mno]",
options: [
.RegularExpressionSearch,
.DiacriticInsensitiveSearch,
.CaseInsensitiveSearch],
range: nil,
locale: nil)
但它看起來像.RegularExpressionSearch
不隨.DiacriticInsensitiveSearch
工作。
我試過使用stringByFolding
方法在搜索前轉換字符串。此方法的問題是它將ß
轉換爲ss
,從而更改字符串的長度並可能使結果範圍無效。