【问题标题】:Remove all text after a symbol - iOS删除符号后的所有文本 - iOS
【发布时间】:2015-02-16 21:00:53
【问题描述】:

我有一个 Web 视图,它对转换为 url 的字符串进行编码,当我检查 NSLog 中的 url 时 - 这就是 url。

http://www.bbc.co.uk/news/technology-30447248%23sa-ns_mchannel=rss&ns_source=PublicRSS20-sa%20%20%20%20%20%20%20%20

我在下面制作了这个扫描仪,我想删除第一个 % 之后的所有内容,所以基本上 %23 是我想从 % 扫描到字符串末尾的第一个。

 NSString *webString22222 = n2;



    NSScanner *stringScanner22222 = [NSScanner scannerWithString:webString22222];



    NSString *content22222 = [[NSString alloc] init];





    [stringScanner22222 scanUpToString:@"%" intoString:Nil];



    [stringScanner22222 scanUpToString:@"" intoString:&content22222];

我创建的扫描仪,你可以看到它有一个百分号表示第一个 scanUpToString 然后第二个我想要一些代码来指示字符串的结尾,就像在实际编程中更精确的类似 scanUpToString:webString22222.endOfString要扫描到字符串末尾的内容,然后将其删除。

很抱歉没有早点提供代码。谢谢。

【问题讨论】:

  • 您需要向我们展示一些您尝试自己解决此问题的代码。在示例中显示您希望输出的样子也很有用。
  • 我编辑了我的整个问题,你能看看@rdelmar

标签: ios objective-c xcode webview nsurl


【解决方案1】:

如果你想删除这个符号,你应该简单地试试这个:

[yourString stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

注意:

  • 我假设你在字符串上获得了这样的 URL,所以我将 yourString 设置为 NSString 变量。
  • 您可以根据需要改进它

希望对你有帮助。

【讨论】:

  • 对不起,我真的需要那个 Enoding,否则我的应用程序将无法运行
  • 请看我的新问题。
【解决方案2】:
Try this I hope it may help you.

 NSString *str1 = @"http://www.bbc.co.uk/news/technology-30447248%23sa-ns_mchannel=rss&ns_source=PublicRSS20-sa%20%20%20%20%20%20%20%20";
    NSRange range = [str1 rangeOfString:@"sa"];

    NSString *newString = [str1 substringToIndex:range.location];
    NSLog(@"%@",newString);

【讨论】:

  • 对不起,它是静态的,并不总是一样的
  • @AjayVenkat,如果将 rangeOfString:@"sa" 替换为 rangeOfString:@"%",那么这种方法应该可行,并且比使用扫描仪更简单。
猜你喜欢
  • 2019-01-22
  • 1970-01-01
  • 2018-12-15
  • 1970-01-01
  • 1970-01-01
  • 2012-08-31
  • 2014-03-16
  • 2023-01-11
  • 1970-01-01
相关资源
最近更新 更多