【问题标题】:How can I select a string from the beginning until a specified character?如何从开头选择字符串直到指定字符?
【发布时间】:2010-09-06 22:00:44
【问题描述】:

如何选择从头到尾的字符串?

例如,在下面的新闻标题中...

someString = @"Los Angeles, California - Apple announces something, stock prices change."

如何仅选择 Los Angeles, California - 到单独的字符串中? (我想根据-(“破折号”)字符之前的所有内容进行选择。

编辑:

假设我的标题是这样的:

someString = @"Los Angeles, California - Apple announces something - stock prices change."

如何防止我的位置字符串看起来像这样:Los Angeles, California - Apple announces something

编辑:

我的错误,我删除了第一个破折号,然后重新输入了字符串。我的错误发布的答案有效。

【问题讨论】:

    标签: ios objective-c nsstring substring nsrange


    【解决方案1】:
    NSRange rangeOfDash = [someString rangeOfString:@"-"];
    substring = (rangeOfDash.location != NSNotFound) ? [someString substringToIndex:rangeOfDash.location] : nil;
    

    如果someString 中没有破折号,这会将substring 设置为nil

    【讨论】:

    • rangeOfDash 在解析完整个事情后会基于 someString 是什么?
    • 我只想要第一个破折号,而不是后续的破折号。查看我的编辑。