![]() |
1
10
|
![]() |
2
26
与Java本身一样,Javascript在其
只有 适用于7位ASCII,无论是Java还是Javascript。这种限制是痛苦的1970年代;在21世纪是完全没有意义的。这个 blog posting 可能是 真的很好 如果某个有公益精神的人愿意将Javascript添加到 this Wikipedia page 它比较了各种语言中的支持regex特性。 page 说Javascript根本不支持任何Unicode属性。同一个网站 a table 这比我上面提到的维基百科页面要详细得多。有关Javascript特性,请查看其ECMA列。
其他语言中的Unicode支持
Ruby、Python、Perl和PCRE都提供了扩展
然而,在Java中
是
事实上,这样编写它甚至有一个好处,因为这样可以让您意识到您正在向character类中添加十进制数字和下划线字符。用一个简单的
不过,我不相信这种解决方法在Javascript中可用。您还可以使用Unicode属性,比如Perl和PCRE中的属性,以及Ruby1.9中的属性,但不能在Python中使用。
唉! 要了解Java的属性支持有多有限,只需将其与Perl进行比较。Perl支持2007年5.10版的1633个Unicode属性,今年5.12版的2478个。我还没有把它们算在古代版本中,但是Perl早在上个千年就开始支持Unicode属性了。 尽管Java很蹩脚,但它仍然比Javascript好,因为Javascript不支持任何Unicode属性whatso 永远。恐怕是这样 Javascript's paltry 7-bit mindset 使它几乎无法用于Unicode。这是语言中一个巨大的漏洞,考虑到它的目标域,很难解释。 对不起。 |
![]() |
3
10
而不是
为了处理变音 |
![]() |
4
10
全部的 拉丁语1补充了如下字符:
|
![]() |
5
6
|
![]() |
7
1
\b也不能正常工作。可以使用Xregex library\p{L}标记来支持unicode,但是仍然没有支持,因此您无法找到单词边界。在下面的实现中使用{L}执行lookbehind/lookaheads来提供\b支持将是很好的 http://blog.stevenlevithan.com/archives/mimic-lookbehind-javascript |
![]() |
8
0
尽管javascript本身不支持Unicode,但您可以使用此库来解决它: http://xregexp.com/ |
![]() |
M - · 为什么两个相同的表情符号不相等? 3 年前 |
![]() |
Mohsen · 将字符串从Windows 1256转换为UTF-8 7 年前 |
![]() |
AMINA ARSHAD · 从字符转换为Unicode数字时出错 7 年前 |
![]() |
Taqwa · 在C#[已关闭]中将上标转换为Unicode 7 年前 |