以下正则表达式失败了我;
[Aa][æ-åÆ-Å].*
但这个正则表达式没有失败
[Aa][v-zV-Z].*
只有在使用æ-å时(丹麦语carachters)。我很困惑为什么?
我得到的错误
parsing "[Aa][æ-åÆ-Å].*" - [x-y] range in reverse order.
答案 0 :(得分:3)
[Z-V]
会失败 - 你需要排序的字母。
例如:Æ是U + 00C6,Å是U + 00C5,它们应该颠倒(或者你可以删除-
,它们之间没有字母)......
如果可能的话,尝试使用Unicode character properties而不是尝试手动定义范围。例如,\p{L}
将匹配所有字母。
答案 1 :(得分:1)
æ
是字符代码145,而å
是字符代码134,所以你实际上是说给我字符代码145和134之间的字符不起作用,因为下限是大于上限。 Æ
到Å
也是如此。
这是一个字符代码图表,可帮助您确定需要创建的RegEx: