私にはこれがあるとしましょうNSString
:@"Country Address Tel:number"
Tel
より前の部分文字列を取得するにはどうすればよいですか? (国の住所) そして、Tel
の後の部分文字列を取得するにはどうすればよいですか? (数)NSStringから特定の単語に到達するまで部分文字列を取得する
18
A
答えて
28
使用NSScanner:
NSString *string = @"Country Address Tel:number";
NSString *match = @"tel:";
NSString *preTel;
NSString *postTel;
NSScanner *scanner = [NSScanner scannerWithString:string];
[scanner scanUpToString:match intoString:&preTel];
[scanner scanString:match intoString:nil];
postTel = [string substringFromIndex:scanner.scanLocation];
NSLog(@"preTel: %@", preTel);
NSLog(@"postTel: %@", postTel);
のNSLog出力:
preTel:国住所
postTel:ここ数
22
(それは常に
:
の場合)あなたがこれを使用することができ、区切り文字を知っていれば
最も簡単な方法は次のとおりです。二つにあなたの文字列を分割し、あなたの配列を与える
NSArray *substrings = [myString componentsSeparatedByString:@":"];
NSString *first = [substrings objectAtIndex:0];
NSString *second = [substrings objectAtIndex:1];
各部分
2
は、私が正常に実装しましたzaphの答えを拡張したものです。
-(NSString*)stringBeforeString:(NSString*)match inString:(NSString*)string
{
if ([string rangeOfString:match].location != NSNotFound)
{
NSString *preMatch;
NSScanner *scanner = [NSScanner scannerWithString:string];
[scanner scanUpToString:match intoString:&preMatch];
return preMatch;
}
else
{
return string;
}
}
-(NSString*)stringAfterString:(NSString*)match inString:(NSString*)string
{
if ([string rangeOfString:match].location != NSNotFound)
{
NSScanner *scanner = [NSScanner scannerWithString:string];
[scanner scanUpToString:match intoString:nil];
NSString *postMatch;
if(string.length == scanner.scanLocation)
{
postMatch = [string substringFromIndex:scanner.scanLocation];
}
else
{
postMatch = [string substringFromIndex:scanner.scanLocation + match.length];
}
return postMatch;
}
else
{
return string;
}
}
関連する問題
- 1. 2つの特定の単語の間に含まれる部分文字列を取得する
- 2. Java regex - 文字列の特定の部分を取得する
- 3. 文字列の特定の部分を取得する
- 4. 文字列内の大文字の単語を特定して取得する
- 5. Java Regex - 文字列の部分文字列の前にあるすべての単語を取得する
- 6. 文字列から特定の単語を取り除く
- 7. IOS:文字列から部分文字列を取り出すNSString
- 8. グレープ特定の文字/単語から特定の文字/単語を特定の文字/単語に読み取る
- 9. 文字列から特定の単語を削除する
- 10. 特定の文字列で始まるすべての部分文字列を取得する
- 11. NSStringから特定の部分文字列を省略するにはどうすればいいですか?
- 12. 特定の部分文字列の後の文字列を取得
- 13. Javaで単語を切り取らずに部分文字列を取得する方法は?
- 14. 特定のトークンの間で部分文字列を取得する方法は?
- 15. Liquidの文字列から部分文字列を取得しますか?
- 16. 特定の文字の後に別の文字の前にSQL部分文字列を取得する
- 17. 特定の文字に達するまで文字列から文字列を削除します。
- 18. 単語で分割する文字列
- 19. RegEx help - 特定の単語を除いて部分文字列を検索
- 20. xslt1.0を使用して特定の部分文字列を取得する
- 21. ustringから部分文字列を取得する
- 22. django:django.utils.safestring.SafeUnicodeから部分文字列を取得する方法
- 23. C#の特定の単語を含む文字列からテキストを取得するには?
- 24. 特定の文字に達するまでどのように文字を取得できますか?
- 25. 文字列のカプセル化部分を分離/特定するC#(部分文字列を識別する)
- 26. 文字列から特定の文字を位置で取得する
- 27. 特定の要素を文字列ファイルから取得する
- 28. 文字列から特定の数値を取得する
- 29. 文字列を単語に分割し、C#で異なる単語を取得する方法は?
- 30. 特定の文字で始まる単語をPHPの文字列から抽出する
驚くばかりです。ありがとうございました –
"便利な"ソリューションに感謝します。 – Vats