2016-04-16 125 views
-1

我有一個將它的值發送到PHP腳本的表單元素。這個值需要被驗證和它有,它可以被分組以5個不同的組,如何驗證多種模式?

x stands for digits 0-9 

組1:ABxxTXxx

集2:ABxxTXAxxx

組3:ABCxxx

組4:AXXX

集5:XXX

可以這樣做嗎?有沒有我可以使用的圖書館?

+0

使不同模式使用正則表達式 – rock321987

+0

@ rock321987你可以請詳細說明嗎? – innowqhy

+0

你應該開始閱讀正則表達式..閱讀正則表達式? – rock321987

回答

0

對不起,我上面的帖子,因爲我仍然無法添加評論的問題。

喜innowqhy,

寫入5個不同的正則表達式匹配被上述 功能fieldsCheck(){

var re1=/AB\d\dTX\d\d$/; 
var re2=/AB\d\dTXA\d\d$/; 
var re3=/ABC\d{3}$/; 
var re4=/A\d{3}$/; 
var re5=/\d{3}$/; 
var field= form.field.value; 

if(re1.test(field) ||re2.test(field) ||re3.test(field) ||re4.test(field) ||re5.test(field)){ 
alert("Test success"); 
return true; 
}else{ 
alert("test failed"); 
} 
} 
0

可以使用此代碼給定的5種型態:

function validate($value){ 



    if(preg_match("/AB[\\w]{2}TX[\\w]{2}/", $value, $matches)) 
    { 
     return 1; 
    } 
    elseif(preg_match("/AB[\\w]{2}TXA[\\w]{3}/", $value, $matches)) 
    { 
     return 2; 
    } 
    elseif(preg_match("/ABC[\\w]{3}/", $value, $matches)) 
    { 
     return 3; 
    } 
    elseif(preg_match("/A[\\w]{3}/", $value, $matches)) 
    { 
     return 4; 
    } 
    elseif(preg_match("/[\\w]{3}/", $value, $matches)) 
    { 
     return 5; 
    } 
    else 
    { 
     return 6; 
    } 

} 


$str = "ABxxTXxx"; 
var_dump(validate($str));