我有一个带有括号和连字符的NSString(电话号码),因为一些电话号码是格式化的.如何从字符串中删除除数字以外的所有字符?

推荐答案

老问题,但是:

  NSString *newString = [[origString componentsSeparatedByCharactersInSet:
                [[NSCharacterSet decimalDigitCharacterSet] invertedSet]] 
                componentsJoinedByString:@""];

它在非数字集合上分解源字符串,然后使用空字符串分隔符重新组合它们.不像挑选字符那样高效,但代码更加紧凑.

Objective-c相关问答推荐

导航回上一个视图控制器

viewWillAppear,viewDidAppear 没有被调用,没有触发

在哪里可以找到 iPad 示例代码

UIButton 标题更改为默认值

如何打印 NSMutableURLRequest?

XCTAssertEqual 错误:(3)不等于(3)

为什么我不应该在 init/dealloc 中使用 Objective C 2.0 访问器?

检测到与加载的库不匹配的 UUID

Container View 好像有 UINavigationBar 一样被下推?

OSStatus 错误代码 -34018

从 UIPageViewController 中移除视图控制器

如何从设置屏幕打开位置服务屏幕?

IOHIDFamily 的神秘控制台错误

将 UIColor 保存到 NSUserDefaults 并从中加载

Objective-C中的继承和类别有什么区别

Objective-c 协议前向声明

Xcode - 如何将 XIB 连接到 ViewController 类

如何配置我的应用程序 - 菜单项被禁用?

iOS:开源 VoIP/SIP Objective-C 代码

UITableViewCell 选中行的文字 colored颜色 变化