加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – 如何进行向后搜索以找到第二个空格/空白并用另一个字

发布时间:2020-12-14 18:57:24 所属栏目:百科 来源:网络整理
导读:又是我.我刚才问了类似的问题,但这个问题有点复杂.我打算使用 RegexKitLite做我需要做的事情,但我相信这可以完成它.我有一个NSString,其中包含一些带空格/空格的单词,我想要得到最后一个单词左边的字符串中的最后一个空格.示例字符串如下: NSString *string
又是我.我刚才问了类似的问题,但这个问题有点复杂.我打算使用 RegexKitLite做我需要做的事情,但我相信这可以完成它.我有一个NSString,其中包含一些带空格/空格的单词,我想要得到最后一个单词左边的字符串中的最后一个空格.示例字符串如下:

NSString *string = @"Here is an example string HELLO ";

正如您在上面的字符串中看到的那样,在字符串的最末端有一个空格/空格.我希望能够获得HELLO左侧的空格/空白并用我自己的文本/字符串替换它.我正在使用NSString的NSBackwardsSearch,但它不起作用.

NSString *spaceReplacement = @"text that i want";
    NSString *replaced = [snipet [string rangeOfString:substring options:NSBackwardsSearch].location:@" " withString:spaceReplacement];
    NSLog(@"%@",replaced);

任何帮助都会有所帮助,我只是厌倦了试图解决这个问题,它让我疯狂.我想我可以用RegexKitLite做到这一点,但考虑到我正在使用的时间框架,我的学习曲线太陡了.我很高兴Jacob R.让我使用NSString的方法:-)

解决方法

此解决方案假设您的字符串末尾始终有空格…它应该转换

Here is an example string HELLO

… 至:

Here is an example stringtext that i wantHELLO

……因为那是我理解你想做的事情.

这是代码:

NSString *string = @"Here is an example string HELLO ";

NSRange rangeToSearch = NSMakeRange(0,[string length] - 1); // get a range without the space character
NSRange rangeOfSecondToLastSpace = [string rangeOfString:@" " options:NSBackwardsSearch range:rangeToSearch];

NSString *spaceReplacement = @"text that i want";
NSString *result = [string stringByReplacingCharactersInRange:rangeOfSecondToLastSpace withString:spaceReplacement];

诀窍是使用[NSString rangeOfString:options:range:]方法.

注意:如果字符串末尾并不总是包含空格,则此代码可能会失败,您需要的代码更复杂一些.如果是这种情况,请告诉我,我会更新答案.

免责声明:我没有测试过代码,但它应该编译并且工作得很好.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读