我创建了一个支持UTF8字符的正则表达式:
XRegExp("^(\\p{L}|[0-9_/-]|\\s)+$");
现在,我不想支持unicode字符:'θ'(theta)。
答案 0 :(得分:1)
你可以使用负向前瞻:
^(?!.*θ)[\p{L}\s0-9_/-]+$
在您的代码中:
XRegExp("^(?!.*θ)[\\p{L}\\s0-9_/-]+$");
答案 1 :(得分:1)
我建议对你的表达进行最微小的调整:
^(?:(?!θ)\\p{L}|[0-9_/-]+|\\s+)+$
否定前瞻(?!θ)
可确保您匹配的\p{L}
不是θ
。还在+
和中间部分添加了\s
量词,这样如果我们连续有几个,我们就可以直接匹配它们,而不会在循环中循环。