我對正則表達式還沒有很好的處理,但是我希望有人能夠幫助我。我發現這個表達在這裏,它幾乎正是我需要的,但我需要給它添加PHP正則表達式在{x,y}之間
/^[A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*$/
我需要確保提交的字符串是{4,20} 4到20個字符之間,我已經看了其他更簡單的例子,但這個表達式有點複雜。在這種情況下,我會在哪裏添加「{4,20}」?
我對正則表達式還沒有很好的處理,但是我希望有人能夠幫助我。我發現這個表達在這裏,它幾乎正是我需要的,但我需要給它添加PHP正則表達式在{x,y}之間
/^[A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*$/
我需要確保提交的字符串是{4,20} 4到20個字符之間,我已經看了其他更簡單的例子,但這個表達式有點複雜。在這種情況下,我會在哪裏添加「{4,20}」?
你可以在開始添加positive lookahead檢查字母右數像
/^(?=.{4,20}$)[A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*$/
這裏有一個快速的解決辦法,將在您需要強制執行字符串長度的任何情況下工作,不管是正則表達式:
/^(?=.{4,20}$)[A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*$/
您也可以使用此前瞻技術,以累積多個正則表達式。
謝謝正是我需要的! :) – aph107 2011-04-27 09:20:09
你試過:
/^([A-Za-z][A-Za-z0-9]*(?:_[A-Za-z0-9]+)*){4,20}$/
這並不好。 – 2011-04-27 09:20:02
沒有那個運氣,謝謝。 – aph107 2011-04-27 09:21:26
@Alin Purcaru是的,你的解決方案看起來更清潔 - 以前沒有真正使用過先行技術:) – 2011-04-27 09:32:05
感謝您的解決方案和資源。我會看看。 – aph107 2011-04-27 09:22:37