2014-09-26 87 views
-1

如果用戶在文本輸入中輸入了id爲「my_input」的文字「sun」,「moon」或「stars」,則該腳本執行某些操作。preg_match的通配符

我的腳本應該如何查看才能使用通配符?例如:如果用戶輸入 「星星是光明的」,劇本仍然沒有的東西...

if(preg_match("/^(sun|moon|stars)$/i", $_POST['my_input']) === 1) { 
    // do stuff 
} 

回答

1

通配符正則表達式是.*

if(preg_match("/.*(sun|moon|stars).*$/i", $_POST['my_input']) === 1) { 
    // do stuff 
} 

這裏測試phpliveregex.com

+0

謝謝!但是現在腳本執行「// do stuuf」,即使在用戶輸入「The starsssssss are bright」...我需要完全匹配「stars」... – Malasorte 2014-09-26 12:14:06

+0

好的。我應該在\ b之前和之後加上\ b ... 謝謝! – Malasorte 2014-09-26 12:24:22