在我的应用程序中,我有一个字符串,如:
"3022513240“
我想把这个转变成:
(302)-251-3240
我怎么解决这个问题?
发布于 2015-12-08 22:34:33
这是一个Swift扩展,它将字符串格式化为10位数字的电话号码。
extension String {
public func toPhoneNumber() -> String {
return stringByReplacingOccurrencesOfString("(\\d{3})(\\d{3})(\\d+)", withString: "($1) $2-$3", options: .RegularExpressionSearch, range: nil)
}
}例如:
let number = "1234567890"
let phone = number.toPhoneNumber()
print(phone)
// (123) 456-7890更新为SWIFT3.0
extension String {
public func toPhoneNumber() -> String {
return self.replacingOccurrences(of: "(\\d{3})(\\d{3})(\\d+)", with: "($1) $2-$3", options: .regularExpression, range: nil)
}
}发布于 2013-02-20 07:49:23
我会这样做:
示例:
NSMutableString *stringts = [NSMutableString stringWithString:self.ts.text];
[stringts insertString:@"(" atIndex:0];
[stringts insertString:@")" atIndex:4];
[stringts insertString:@"-" atIndex:5];
[stringts insertString:@"-" atIndex:9];
self.ts.text = stringts;希望这能帮上忙。
发布于 2019-03-19 16:26:27
Swift 4.2
extension String {
public func toPhoneNumber() -> String {
return self.replacingOccurrences(of: "(\\d{3})(\\d{3})(\\d+)", with: "$1-$2-$3", options: .regularExpression, range: nil)
}}结果

https://stackoverflow.com/questions/14974331
复制相似问题