标签: javascript regex unicode
我有这个脚本
key = val.replace(/[^a-z0-9\s]/gi, '').replace(/[_\s]/g, '+')
它工作正常,但它也会取出აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰ
აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰ
我的问题是如何更改给定的代码以便它也接受这些字符?
感谢。
答案 0 :(得分:2)
Javascript正则表达式不支持unicode属性。您必须在表达式中添加显式的unicode范围。例如,格鲁吉亚语的范围是10A0-10FF,所以要替换不是拉丁语或格鲁吉亚语的所有内容,你需要像
val.replace(/[^\w\u10A0-\u10FF]/g, '')
This tool可以为您提供进一步的帮助。
答案 1 :(得分:1)
您可以手动指定允许的字符范围,也可以使用XRegExp之类的库。