0

iOSアプリでHTMLファイルに動的に置き換える必要があります。

それはローカリゼーションについてです。

HTMLファイルには、次のようなものがあります。LANG(183)これは「ローカライズされた文字列」に変換する必要があります

stringByreplacingMatchesInStringを見ていましたが、コールバック関数を受け入れるバージョンが見つかりませんか?私は何かが恋しいですか?

4

1 に答える 1

1

次のブロックベースのマッチング方法を使用できますNSRegularExpression

NSMutableString *newString = [htmlString mutableCopy];
[regex enumerateMatchesInString:htmlString
                        options:0
                          range:NSMakeRange(0, [htmlString length])
                     usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
                         // [result range] is the matching range.
                         // Do something with newString.
                     }
];

(私が知る限り)htmlStringブロック内で変更してはいけません。したがって、最初に変更可能なコピーを作成する必要があります。これは、ブロック内で変更できます。

もちろん、newString一致範囲は常にを参照するため、 の長さの変化を追跡する必要がありますhtmlString

于 2012-10-16T09:56:19.300 に答える