Remove double quotes from NSString

前端 未结 6 457
长情又很酷
长情又很酷 2020-12-18 08:28

How do I remove double quotes from an NSString. Example:

//theMutableString: \"Hello World\"

[theMutableString replaceOccurrencesOfString:@\"\\\"\" withStr         


        
相关标签:
6条回答
  • 2020-12-18 09:12

    Use the NSMakeRange function instead of your cast. This'll work:

    [mString replaceOccurrencesOfString:@"\"" withString:@"" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [mString length])];
    
    0 讨论(0)
  • 2020-12-18 09:16

    You can use

    string = [string stringByReplacingOccurrencesOfString:@"\"" withString:@"" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [string length])];
    
    0 讨论(0)
  • 2020-12-18 09:31

    How about this ?

    NSCharacterSet *quoteCharset = [NSCharacterSet characterSetWithCharactersInString:@"\""];
    NSString *trimmedString = [toBeTrimmedString stringByTrimmingCharactersInSet:quoteCharset];
    
    0 讨论(0)
  • 2020-12-18 09:31

    I works perfectly on my end (I copy-pasted your replace line), with both NSMakeRange and the inline struct cast. Are you sure the quotes in your NSString are really the ASCII character 0x22?

    0 讨论(0)
  • 2020-12-18 09:32

    Assuming the mString bit is a typo. I ran this code and the answer was as expected

    NSMutableString * theMutableString = [[NSMutableString alloc] initWithString:@"\"Hello World!\""];
    NSLog(@"%@",theMutableString);
    
    [theMutableString replaceOccurrencesOfString:@"\"" withString:@"" options:NSCaseInsensitiveSearch range:(NSRange){0,[theMutableString length]}];
    
    NSLog(@"%@",theMutableString);
    
    [theMutableString release];
    

    Output

    2010-01-23 15:49:42.880 Stringtest[2039:a0f] "Hello World!"
    2010-01-23 15:49:42.883 Stringtest[2039:a0f] Hello World!
    

    So it mString was a typo in your question, then your code is correct and the problem is elsewhere. If mString is a typo in your code than that would be the issue.

    0 讨论(0)
  • 2020-12-18 09:34

    What happens if you use NSMakeRange(0, [theMutableString length]) instead of trying to cast an inline struct?

    0 讨论(0)
提交回复
热议问题