gpt4 book ai didi

javascript - JavaScript 和 VBScript 中支持 Unicode 的 isNumeric() 函数

转载 作者:行者123 更新时间:2023-12-02 20:06:06 25 4
gpt4 key购买 nike

我无法找到适用于 javaScript 和 VBScript 的 Unicode 支持的 isNumeric() 函数。这些函数都有,但不支持 unicode。

即使没有 Unicode 支持的版本,那么两种语言中是否都有 API 支持 isNumeric() 或 isDigit() 功能?

最佳答案

几周前我遇到了同样的问题,我使用的解决方案是根据可能定义数字的 unicode 字符代码范围检查我的字符代码。

它们在这里(范围来自 PERL 源,因为他们已经完成了工作!!):

var isDigit = function(ch)
{
var iCode = ch.charCodeAt(0)
return ( 0x0030 <= iCode && iCode <= 0x0039 )
|| ( 0x0660 <= iCode && iCode <= 0x0669 )
|| ( 0x06F0 <= iCode && iCode <= 0x06F9 )
|| ( 0x0966 <= iCode && iCode <= 0x096F )
|| ( 0x09E6 <= iCode && iCode <= 0x09EF )
|| ( 0x0A66 <= iCode && iCode <= 0x0A6F )
|| ( 0x0AE6 <= iCode && iCode <= 0x0AEF )
|| ( 0x0B66 <= iCode && iCode <= 0x0B6F )
|| ( 0x0BE6 <= iCode && iCode <= 0x0BEF )
|| ( 0x0C66 <= iCode && iCode <= 0x0C6F )
|| ( 0x0CE6 <= iCode && iCode <= 0x0CEF )
|| ( 0x0D66 <= iCode && iCode <= 0x0D6F )
|| ( 0x0E50 <= iCode && iCode <= 0x0E59 )
|| ( 0x0ED0 <= iCode && iCode <= 0x0ED9 )
|| ( 0x0F20 <= iCode && iCode <= 0x0F29 )
|| ( 0x1040 <= iCode && iCode <= 0x1049 )
|| ( 0x17E0 <= iCode && iCode <= 0x17E9 )
|| ( 0x1810 <= iCode && iCode <= 0x1819 )
|| ( 0x1946 <= iCode && iCode <= 0x194F )
|| ( 0x19D0 <= iCode && iCode <= 0x19D9 )
|| ( 0xFF10 <= iCode && iCode <= 0xFF19 )
|| ( 0x104A0 <= iCode && iCode <= 0x104A9 )
|| ( 0x1D7CE <= iCode && iCode <= 0x1D7FF )
}

例如,在泰米尔语中,“一”的字符代码是 0x0BE7,参见。 http://www.fileformat.info/info/unicode/char/BE7/index.htm ,您可以看到它是范围 0x0BE6 => 0x0BEF 的一部分,所以没问题。

关于javascript - JavaScript 和 VBScript 中支持 Unicode 的 isNumeric() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7401224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com