私はごちゃ混ぜになっているとしNSString
ましょう
dsadasdasd"my_id": "qwerr"dcdscsdcds"my_id": "oytuj"adasddasddsddaS"my_id": "sjghjgjg"ddsfsdfsdf
間の文字列のすべてのインスタンスを見つけるにはどうすればよいですか?
"my_id": "
そして次
"
したがって、ここでは、結果を次のようにしますNSArray
。
qwerr
oytuj
sjghjgjg
ヒント、正規表現、またはその他の解決策を探しています。私は多くの使い方NSRange
とsubstringWithRange
組み合わせを試しましたが、うまくいきませんでした。
終値の要件を見落としました。この場合、正規表現の有無にかかわらず、コードの長さは同じになります。
これは、基本的に文字列"my_id": "
の次"
または最後までのすべての部分文字列を抽出する正規表現の提案です。
NSError *error = nil;
NSString *pattern = @"\"my_id\": \"([^\"]+)";
NSString *string = @"dsadasdasd\"my_id\": \"qwerr\"dcdscsdcds\"my_id\": \"oytuj\"adasddasddsddaS\"my_id\": \"sjghjgjg\"ddsfsdfsdf";
NSRange range = NSMakeRange(0, string.length);
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:pattern options:0 error:&error];
NSArray *matches = [regex matchesInString:string options:0 range:range];
for (NSTextCheckingResult* match in matches) {
NSRange group1 = [match rangeAtIndex:1];
NSLog(@"group1: %@", [string substringWithRange:group1]);
}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加