如果我需要一個字符串來匹配這個模式:「word1,word2,word3」,我將如何檢查字符串以確保它適合PHP?檢查一個字符串是否匹配模式
我想確保字符串符合這些模式:
word
word1,word2
word1,word2,word3,
word1,word2,word3,word4,etc.
如果我需要一個字符串來匹配這個模式:「word1,word2,word3」,我將如何檢查字符串以確保它適合PHP?檢查一個字符串是否匹配模式
我想確保字符串符合這些模式:
word
word1,word2
word1,word2,word3,
word1,word2,word3,word4,etc.
preg_match("[^,]+(,[^,]+){2}", $input)
這符合:
stack,over,flow
I'm,not,sure
但不是:
,
asdf
two,words
four,or,more,words
empty,word,
preg_match('/word[0-9]/', $string);
,如果你嚴格想匹配一個或多個完整的單詞,而不是逗號分隔短語嘗試:
preg_match("^(?:\w+,)*\w+$", $input)
當我需要確保我的整個字符串一個模式匹配,我這樣做:
恩,我想一個年月日日期(不YMD H:I:S)
$date1="2015-10-12";
$date2="2015-10 12 12:00:00";
function completelyMatchesPattern($str, $pattern){
return preg_match($pattern, $str, $matches) === 1 && $matches[0] === $str;
}
$pattern="/[1-9][0-9]{3}-(0[1-9]|1[0-2])-([012][1-9]|3[01])/";
completelyMatchesPattern($date1, $pattern); //true
completelyMatchesPattern($date2, $pattern); //false
你怎樣才能使它與任何數量的單詞一起工作? – Andrew 2009-11-21 23:27:52
將「{2}」更改爲「*」 – 2009-11-21 23:35:51
哦,好的。謝謝。 :) – Andrew 2009-11-22 19:09:13