我有一个阿拉伯语的数字串,我想把它转换成英语,我用这个:
let arabicPhoneNumber = "٠١٠١٢٣٤٥٦٧٨٩"
let formatter = NumberFormatter()
formatter.locale = Locale(identifier: "EN")
if let number = formatter.number(from: arabicPhoneNumber)?.stringValue {
print(number) //deletes leading zero
}
问题是它删除了前导零,我想保留它,因为这是一个电话号码。
swift 4.0
func convertToEnDigits(_ digits: String) -> String {
// We need a CFMutableString and a CFRange:
let cfstr = NSMutableString(string: digits) as CFMutableString
var range = CFRange(location: 0, length: CFStringGetLength(cfstr))
// Do the transliteration (this mutates `cfstr`):
CFStringTransform(cfstr, &range, kCFStringTransformToLatin, false)
// Convert result back to a Swift string:
return (cfstr as String)
}
不是将字符串转换为数字,而是可以从基础库中使用“<代码> CFSTRIN转换”(< /代码>)对拉丁脚本进行“音译”:
let arabicPhoneNumber = "٠١٠١٢٣٤٥٦٧٨٩"
// We need a CFMutableString and a CFRange:
let cfstr = NSMutableString(string: arabicPhoneNumber) as CFMutableString
var range = CFRange(location: 0, length: CFStringGetLength(cfstr))
// Do the transliteration (this mutates `cfstr`):
CFStringTransform(cfstr, &range, kCFStringTransformToLatin, false)
// Convert result back to a Swift string:
let phoneNumber = cfstr as String
print(phoneNumber) // 010123456789
这将保留所有数字以及可能的分隔符。
备注:上述示例(来自问题)包含“阿拉伯-印度”数字,例如١
=U 0661=“阿拉伯-印度数字一”。这些在macOS 10.12和iOS 10上的翻译是正确的。
在早期的OS版本上,
CFStringTransform(cfstr, &range, kCFStringTransformLatinArabic, true)
CFStringTransform(cfstr, &range, kCFStringTransformStripCombiningMarks, false)
在我的测试中正确地将阿拉伯语数字转换为拉丁语。
我还没有找到一个能解决PHP中整数到字符串转换这一方面的问题,所以 我有一个文件,其中一个字段包含一些长度为3、4或5位的数字,我需要将所有数字标准化为4位 如果数字是123、1234、12345,那么为了标准化,我在第一个数字后面加了一个零,第二个数字不加任何处理,第三个数字四舍五入:到目前为止还不错。问题在于,该文件包含一些具有有效前导零023、0234、02346的数字 我需要保留前导零,我
本文向大家介绍Swift语言反转字符串,包括了Swift语言反转字符串的使用技巧和注意事项,需要的朋友参考一下 示例 2.2 3.0
我有一根绳子, 我想把它转换成一个字节数组。 有人能在这方面引导我吗?我尝试了以下代码,但我得到了ASCII中的数据。我不想那样。
我遇到了这样一个java字符串,其中以下内容是错误的: 我想这是因为字符串构造函数默认将主体字节[]的编码视为UTF-8,我不是100%确定。我如何能够将此字符串存储在字节[]中,并能够稍后将其转换回来?我想我需要能够确定字节[]的编码方式。我该怎么做呢? 一些上下文:我需要字节[],以便压缩数据,将其存储在数据库中,然后解压缩并将未压缩的字节[]转换回原始字符串。这个字符串最初来自某个下载了网页
本文向大家介绍C语言实现将字符串转换为数字的方法,包括了C语言实现将字符串转换为数字的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C语言实现将字符串转换为数字的方法。分享给大家供大家参考。具体实现方法如下: C语言提供了几个标准库函数,可以将字符串转换为任意类型(整型、长整型、浮点型等)的数字。以下是用atoi()函数将字符串转换为整数的一个例子: atoi()函数只有一个参数
主要内容:字符串结束标志(划重点),字符串长度用来存放字符的数组称为 字符数组,例如: 字符数组实际上是一系列字符的集合,也就是 字符串(String)。在C语言中,没有专门的字符串变量,没有string类型,通常就用一个字符数组来存放一个字符串。 C语言规定,可以将字符串直接赋值给字符数组,例如: 数组第 0 个元素为 ,第 1 个元素为 ,第 2 个元素为 ,后面的元素以此类推。 为了方便,你也可以不指定数组长度,从而写作: 给字符数组赋