我想在PHP中驗證用戶名並用正則表達式檢查它們。它們應該至少包含2個「真實」字符,如A
,Ä
,s
,1
或5
,但其他一些字符如.
或_
或者也應允許空格。所需字符的位置並不重要。正則表達式 - 需要一些字符,並只允許一些額外的?
這是我到目前爲止,並沒有不幸也讓...
爲用戶名:
preg_match('/^[\pL\pN\s-+_.]+$/u', $value)
我想只允許某些字符。例如,<
或#
。 我該怎麼做?
我想在PHP中驗證用戶名並用正則表達式檢查它們。它們應該至少包含2個「真實」字符,如A
,Ä
,s
,1
或5
,但其他一些字符如.
或_
或者也應允許空格。所需字符的位置並不重要。正則表達式 - 需要一些字符,並只允許一些額外的?
這是我到目前爲止,並沒有不幸也讓...
爲用戶名:
preg_match('/^[\pL\pN\s-+_.]+$/u', $value)
我想只允許某些字符。例如,<
或#
。 我該怎麼做?
讓我們來看看...
^(?:.*?[\p{L}\p{N}]){2}
^[-+.\w ]+$
讓我們結合一起,我們得到:
^(?=(?:.*?[\p{L}\p{N}]){2})[-+.\w ]+$
我用了lookahead用於檢查至少有2個必需字符的部分,並將其他所有內容放在模式的主要部分。總之,這可以讓您通過相同的輸入檢查兩種不同的條件。
**必須**它包含'.','-',空格?或者它是可選的? – Shafizadeh
不,它們應該是可選的 – haheute