2014-05-22 89 views
1

的規則,我試圖找出一個正則表達式來表示這個字符串的正則表達式表達:在警予模型驗證

dev_XXX_<name> 

其中XXX是3位數的號碼和名字已經與/[0-9a-zA-Z \- _]/表示。

這個正則表達式將在PHP/YII中用作模型驗證規則,所以它是一個PCRE正則表達式。

我不工作的解決方案是這樣的一個:

/^dev_([0-9]{3})_<([0-9a-zA-Z \- _])>*$/ 

但似乎不能接受的最後一個主要標誌。

謝謝你的幫助&解釋!

回答

1

看起來你的星號是放錯了地方

/^dev_([0-9]{3})_<([0-9a-zA-Z \- _])>*$/ 

應該

/^dev_([0-9]{3})_<([0-9a-zA-Z \- _]*)>$/ 

這將意味着你的字符集[0-9a-zA-Z \- _]應符合這些字符的零個或多個