簡體   English   中英

正則表達式無法允許撇號

[英]regex unable to allow apostrophe

我以前使用過的正則表達式遇到一個奇怪的問題。 目的是允許用戶以php形式輸入他的名字,包括字母,連字符和撇號。 我的正則表達式是:

 "/^[\w\s'àáâãäåçèéêëìíîïðòóôõöùúûüýÿ-]+$/i"

但是...除了撇號外,所有內容都允許。 轉義不會改變。 為什么?

要處理unicode字符,您可以執行以下操作:

/^[\pN\pL\pP\pZ]+$/

哪里:

\pN  stands for any number
\pL  stands for any letter
\pP  stands for any punctuation
\pZ  stands for any space

它匹配如下名稱:

d'Alembert  
d’Alembert    (note the different apos from above)
Jean-François
O'Connors

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM