dps43378 2009-12-16 17:29 采纳率: 0%
浏览 90

确定字符串是否包含数组中的一组单词之一

I need a simple word filter that will kill a script if it detects a filtered word in a string.

say my words are as below

$showstopper = array(badword1, badword2, badword3, badword4);

$yourmouth = "im gonna badword3 you up";

if(something($yourmouth, $showstopper)){ 
//stop the show
}
  • 写回答

5条回答 默认 最新

  • doujizhong8352 2009-12-16 17:31
    关注

    You could implode the array of badwords into a regular expression, and see if it matches against the haystack. Or you could simply cycle through the array, and check each word individually.

    From the comments:

    $re = "/(" . implode("|", $showstopper) . ")/"; //  '/(badword1|badword2)/'
    if (preg_match($re, $yourmouth) > 0) { die("foulmouth"); }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 制裁名单20240508芯片厂商
  • ¥20 易康econgnition精度验证
  • ¥15 线程问题判断多次进入
  • ¥15 msix packaging tool打包问题
  • ¥28 微信小程序开发页面布局没问题,真机调试的时候页面布局就乱了
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接