up
down
Close
線上訪客: 5 本日人次: 129 昨日人次: 1247 累積人次: 787757
 

PHP 檢查字串是否包含刻意隔開的保留字,如「管o理o員」

│ 1477 Views │ PHP

上一篇(PHP 檢查字串中是否包含某字串)有提到如何判斷字串中是否包含某字串,本篇要提的是判斷刻意用其他符號隔開的特定文字,例如,保留字是「架站盒子」,如果要檢查「架o站o盒o子、架站的盒子」等刻意隔開的字,可以簡單用stripos+多條件判斷即可。

以「架站盒子」的例子來說只要判斷字串中所有字只要有包含這四個字,無論是否隔開都算,就分別檢查這四個字並做成&&條件即可,範例如下:

$nick = "架o站盒o子的分身";
if(stripos($nick, "架") !== false && stripos($nick, "站") !== false && stripos($nick, "盒") && stripos($nick, "子")) { echo "包含保留字"; } else{ echo "未包含保留字"; }

顯示:包含保留字

這個缺點是只要字串中出現「架+站+盒+子」四個字,無論順序、是否隔開,都會被判斷為包含,假設保留字是「小風」,那麼,「小小風」、「小o風大大」、「風小小」、「風o小」等,全部都會被判定為包含保留字。

不過如果只有小或風則不會受到影響,例如「大風」、「小水」都不會被判定包含保留字。

本文是否對您有幫助?

延伸閱讀