我試圖實現數字輸入加上字母X或X的驗證。到目前爲止,我有:PHP的正則表達式數字加一個字母
if(preg_match('/[^0-9xX]+$/', $data)) return 'error';
它正確地返回錯誤的所有案件,但A123。有沒有人知道爲什麼?
我試圖實現數字輸入加上字母X或X的驗證。到目前爲止,我有:PHP的正則表達式數字加一個字母
if(preg_match('/[^0-9xX]+$/', $data)) return 'error';
它正確地返回錯誤的所有案件,但A123。有沒有人知道爲什麼?
在正則表達式的開始使用^
來檢查是否完整的字符串,而不是子字符串。
if(preg_match('/^[0-9xX]+$/', $data))
return 'error';
使用*而不是加 –
@AvinashRaj這將使該組可選,OP不希望空的內容有效 – Tushar
試試這個:
if(preg_match('/^[0-9x]+$/i', $data)){
echo 'match';
}else{
echo 'no match';
}
它喜歡你的,只是反過來。 ^是字符串的開頭。 $用於字符串的結尾。所以整個字符串必須匹配模式。
if(!preg_match('/^([0-9]+|[xX])$/', $data)) return 'error';
這也許會更好, 的權利的情況下匹配,以及匹配結果前添加!
。
我不明白。
if(preg_match('/^[0-9xX]+$/', $data)) return 'error';
還是當我們進入123
我很抱歉,如果我做的誤解不返回錯誤。
if(preg_match('/[0-9]xX$/', $data)) return 'error';
所有的數字後面跟着xX。 CMIIW。
顯示輸入輸出 –
輸入:a123輸出:非錯誤 – Tom
'數字輸入加上字母X或x'是否將此輸入視爲有效輸入或無效輸入? – NeverHopeless