我創建了一個正則表達式支持UTF8字符:如何創建正則表達式以省略Unicode字符'θ'?
XRegExp("^(\\p{L}|[0-9_/-]|\\s)+$");
現在,我不想支持Unicode字符: 'θ'(THETA)。
我創建了一個正則表達式支持UTF8字符:如何創建正則表達式以省略Unicode字符'θ'?
XRegExp("^(\\p{L}|[0-9_/-]|\\s)+$");
現在,我不想支持Unicode字符: 'θ'(THETA)。
可以使用負前瞻爲:
^(?!.*θ)[\p{L}\s0-9_/-]+$
在您的代碼:
XRegExp("^(?!.*θ)[\\p{L}\\s0-9_/-]+$");
沒有它沒有工作。該領域正在接受theta。 – vermaraj
我建議最微小的調整,以你的表達:
^(?:(?!θ)\\p{L}|[0-9_/-]+|\\s+)+$
負前瞻(?!θ)
確保您可能匹配的\p{L}
不是θ
。還在\s
和中間部分添加了一個+
量詞,這樣如果我們連續有幾個,我們可以直接匹配它們而不需要循環交替。
我不是最好的正則表達式,但作爲一個退步到不知道,你可以明確地檢查theta,如果它不是那麼然後使用其他。 – Kendra