我一直在尝试编写一个正则表达式来匹配所有 unicode 单词字符,例如:
/[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF\w]/gi
但这完全失败并且不匹配任何东西。我尝试了多种表达式,但似乎一旦我尝试指定一个范围,它就会失败。有人比我幸运吗?
我希望 actionscript 能提供类似\p{L} 的东西,但如果有类似的东西,我在文档中找不到。
最佳答案
您可以将 String.fromCharCode 与 unicode 字符一起使用,然后范围将在正则表达式中正常工作。这是使用您的原始问题的示例:
var exp:RegExp = new RegExp("[" + generateRangeForUnicodeVariables(0x00A0, 0xD7FF) + generateRangeForUnicodeVariables(0xF900, 0xFDCF) + generateRangeForUnicodeVariables(0xFDF0, 0xFFEF) + "\w]", "gi");
private function generateRangeForUnicodeVariables(var1:Object, var2:Object):String
{
return String.fromCharCode(var1) + "-" + String.fromCharCode(var2);
}
关于regex - 在 actionscript 正则表达式中指定 unicode 范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10414034/