繁体   English   中英

如何访问NSString中的第n个字符?

[英]How do I access the nth character(s) in an NSString?

我将HEX颜色用作NSStrings,并希望检查特定字符串的第一个,第三个或第五个字符是否包含F,但是如果它在第二个,第四个或第六个字符中包含F,则可以忽略它。

这是为了确定所讨论的颜色是否是浅色。

我进行了搜索,但仅找到有关如何查找字符范围的答案。

您可以使用NSString的characterAtIndex成员。

char fifthChar = [yourString characterAtIndex:5];

正如@Daniel Pereira所说,您可以使用-[NSString characterAtIndex:]方法来检查字符。

NSString *string = /* Assume this exists */;
if ([string characterAtIndex: 1] == 'F' || \
    [string characterAtIndex: 3] == 'F' || \
    [string characterAtIndex: 5] == 'F')
{
    // F at odd-indexed character
}
else
{
    // Do other stuff here...
}

您是否尝试过使用characterAtIndex 您可以使用该方法检索第一个,第三个和第五个字符(当然一次是一个)的字符串,并将其与F进行比较。

请注意,所有十六进制颜色必须为6个字符。 有时,您只能用三个十六进制值表示一种颜色(例如,FFF在HTML中仍会为您提供白色)。 因此,如果您的颜色仅使用三个字符表示,并且您尝试使字符位于索引5,则该方法将引发“超出范围”异常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM