文字列を検索して特定の html タグ内にラップする正規表現があります。問題は、トルコ語の 2 つの文字 (İ と ı) が小文字または大文字と一致しないことです。そのため、適切にラッピングできません。
より正確には:
- i と İ は İ と一致しません (おそらく "I" になります)
- I は ı と一致しません (おそらく "i" になります)
例: 検索用語は İskendername です。文字列にはそのまま (İskendername) が含まれていますが、一致するものはまったくありません。
これが私のコードです:
NSString *regex_pattern = [[NSArray arrayWithObjects:@"(", search_term, @")(?![^<>]*>)",nil] componentsJoinedByString:@""];
NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression
regularExpressionWithPattern:regex_pattern options:NSRegularExpressionCaseInsensitive error:&error];
string_to_be_searched = [regex stringByReplacingMatchesInString:string_to_be_searched options:0 range:NSMakeRange(0, [stringByReplacingMatchesInString:string_to_be_searched length]) withTemplate:@"<div class=""highlight"">$1</div>"];