2016-01-26 96 views
1

我有一些理解這個正則表達式的問題。這種模式的正確表達式

我試着做一個模式,但不像預期的那樣工作。

我要的是[A-Za-z]{2,3}[0-9]{2,30}

這在開始時是2-3個字母,之後

FA1321321 
BFA18098097 

2-30號我想用它來驗證輸入字段,但不能找出正則表達式應該是什麼樣子。

任何能夠幫助我的人甚至可以解釋一下嗎?如果你想讓它對於整個字符串(無額外字符/前後)嚴格匹配只需確保/包圍在PHP,也許^$ -

+1

您的正則表達式[對我來說很好](https://regex101.com/r/jJ6wW6/1) –

+0

Se回答如下。如果您不將它錨定到字符串的開頭和結尾,那麼您仍然可以匹配符合規則的字符串中間部分。例如'ABCDE54321'就是在'C'開始比賽。 – shawnt00

回答

1

您正則表達式是正確的。

$pattern = "/^[A-Za-z]{2,3}[0-9]{2,30}$/" 
$found = preg_match($pattern, $your_str); 

PHP documentation

的preg_match()如果圖案給定主題匹配,則返回1,0,如果沒有,或FALSE如果發生了錯誤。

+0

輝煌的正則表達式是一個艱難的餅乾有時hehe,最近我很接近,所以這是一件好事。 感謝您的幫助,現在我可以完成我的代碼後,嚴重的時間生氣ad正則表達式:D –