[英]verify string with preg_match
我有一個問題,對你們所有人來說似乎很簡單,但無法真正理解。 直到現在都遇到警告。
我可以知道如何接受一個字符串,該字符串的整數為0-9和alpha a-zA-Z,但帶有preg_match
至少5個字符,最多15個字符。 謝謝
嘗試這個:
preg_match('/^[0-9a-zA-Z]{5,15}$/D', $str)
這里的^
標記字符串的開始和$
的結尾( D修飾符是讓$
僅匹配行的結尾而沒有結尾的換行符)。 這意味着整個字符串必須通過模式[0-9a-zA-Z]{5,15}
進行匹配,該模式描述字符類別[0-9a-zA-Z]
的5到15個字符的序列。
您在發帖中說
我怎樣才能接受具有0-9整數和 alpha a-zA-Z的字符串,但是
如果該AND是一個字母,並且顯示“字母&&數字”,則情況會變得更加復雜:
...
$nd = preg_match_all('/\d/', $text, $m); # count numbers
$na = preg_match_all('/[a-zA-Z]/', $text, $m); # count characters
$nn = $na + $nd; # must be like strlen($text)
if($nn==strlen($text) && $nn>=5 && $nn<=15 && $na && $nd)
echo "$text ok";
else
echo "$text not ok";
...
問候
機器人
請改用此方法,我已經在我的網站上將其作為垃圾郵件過濾器進行了測試。
if (!preg_match("/^[0-9a-zA-Z]{5,80}$/D", "$name"))
{
die("Error Occured : Please Enter Your Name Before Attempting to Send Message");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.