【问题标题】:How to change the values in the string between the letters如何更改字母之间字符串中的值
【发布时间】:2013-05-22 08:02:27
【问题描述】:

我有类似@"goodhouse=30&app=60&val=30askldkla" 的字符串 如何在 house= 和 & 之间找到值 30,并将其更改为 50?

【问题讨论】:

  • 我试过[str replaceOccurrencesOfString:@"30" withString:@"60" options:NSCaseInsensitiveSearch range:NSMakeRange(0, str.length)]; 但是如果有相同的值就不好了

标签: ios nsstring nsmutablestring


【解决方案1】:

您可以使用 NSRange 找到 house=& 字符串之间的范围。如果范围存在,则更改您想要的字符串。

【讨论】:

  • 这很糟糕,因为如果范围超出我需要所有时间来计算它。
【解决方案2】:

if ([yourString rangeOfString:@"30"].location==NSNotFound) {
yourString = [yourString stringByReplaceOccurenceOfString:@"30" withString@"60"];

}

【讨论】:

    【解决方案3】:

    试试这样,

    string=@"30";
    str=[str stringByReplaceOccurenceOfString:string withString@"50"];
    

    编辑:- 试试这样,

    NSString *test = [dateandtime stringByReplacingCharactersInRange:NSMakeRange(10,2) withString:@"50"];
    

    【讨论】:

    • 我试了一下,但是如果有两个 30 的字符串会出现问题。所有字符串都是 50,但我只需要一个
    • 我在上面写过,使用 nsrange 不好,因为如果字符串是动态的,我总是需要计算范围
    • 如果有其他答案我可以试试。
    • 如果在它们之间放置的不是 30,那么您当时想做什么?
    • 30 将是静态的。所以我需要找到 house= 和 &app 之间的值并更改它。
    猜你喜欢
    • 2020-04-16
    • 1970-01-01
    • 1970-01-01
    • 2020-06-02
    • 2015-07-18
    • 1970-01-01
    • 1970-01-01
    • 2020-11-03
    • 2013-03-01
    相关资源
    最近更新 更多