ios - 在NSString中查找第一个字母并向后计数

标签 ios parsing nsstring nsscanner

我是IOS的新手,正在寻找一些指导。

我正在解析一个长的NSString。开头可能有几个垃圾字符(可以是任何非字母字符),然后是11位数字或空格,然后是单个字母(A-Z)。我需要获取字母的位置,并获取字母后面的11个字符到字母后面的1个字符的子字符串。

谁能给我一些指导呢?

示例:'!!2553072 C'
而且我想要:'53072 '

最佳答案

进行正则表达式或某些Objective-C向导可能会有更优雅的方法,但这是一个简单的解决方案(经过个人测试)。

-(NSString *)getStringContent:(NSString *)input
{
    NSString *substr = nil;
    NSRange singleLetter = [input rangeOfCharacterFromSet:[NSCharacterSet letterCharacterSet]];
    if(singleLetter.location != NSNotFound)
    {
        NSInteger startIndex = singleLetter.location - 11;
        NSRange substringRange = NSMakeRange(start, 11);
        substr = [tester substringWithRange:substringRange];
    }

    return substr;
}

关于ios - 在NSString中查找第一个字母并向后计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13976560/

相关文章:

ios - 如何获得更准确的设备到 Beacon 的距离?

parsing - 标识符标记关键字antlr解析器

ios - 核心数据: Do we need to re-fetch after every delete?

php - 将数据从android发送到php,可能是数据没有到达php端

r - 使用 pdftools 在 R 中按段落解析 PDF

ios - 使用 swift 在 iOS 中访问联系人详细信息

ios - 从网站提取文本的更快方法?

iphone - 我想问如何将十六进制NSString转换为long值

android - 为 OpenGL ES 渲染加载 3D 对象和纹理

iOS 将 CIImage 保存到相机胶卷