Xet*_*ius 208 objective-c nsstring
如何检查NSString是否以某个字符(字符*)开头.
*是单元格类型的指示符,所以我需要没有*的NSString的内容,但需要知道*是否存在.
Rob*_*ger 448
您可以使用以下-hasPrefix:
方法NSString
:
Objective-C的:
NSString* output = nil;
if([string hasPrefix:@"*"]) {
output = [string substringFromIndex:1];
}
Run Code Online (Sandbox Code Playgroud)
迅速:
var output:String?
if string.hasPrefix("*") {
output = string.substringFromIndex(string.startIndex.advancedBy(1))
}
Run Code Online (Sandbox Code Playgroud)
Chr*_*ong 12
您可以使用:
NSString *newString;
if ( [[myString characterAtIndex:0] isEqualToString:@"*"] ) {
newString = [myString substringFromIndex:1];
}
Run Code Online (Sandbox Code Playgroud)
hasPrefix工作得特别好.例如,如果你在a中寻找一个http url NSString
,你将使用componentsSeparatedByString
创建一个NSArray
和迭代数组hasPrefix
来查找以http开头的元素.
NSArray *allStringsArray =
[myStringThatHasHttpUrls componentsSeparatedByString:@" "]
for (id myArrayElement in allStringsArray) {
NSString *theString = [myArrayElement description];
if ([theString hasPrefix:@"http"]) {
NSLog(@"The URL is %@", [myArrayElement description]);
}
}
Run Code Online (Sandbox Code Playgroud)
hasPrefix
返回一个布尔值,指示给定的字符串是否与接收者的开头字符匹配.
- (BOOL)hasPrefix:(NSString *)aString,
Run Code Online (Sandbox Code Playgroud)
参数aString
是您要查找的字符串如果aString匹配接收者的开头字符,则返回值为YES,否则为NO.如果aString
为空则返回NO .
作为更一般的答案,请尝试使用 hasPrefix 方法。例如,下面的代码检查字符串是否以 10 开头,这是用于识别特定问题的错误代码。
NSString* myString = @"10:Username taken";
if([myString hasPrefix:@"10"]) {
//display more elegant error message
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
105981 次 |
最近记录: |