创建一个php搜索页面

时间:2016-09-17 14:00:35

标签: php

我正在尝试创建一个可以搜索其他页面的页面! 一切都在工作,除了细节! 以下是代码的一部分:

$a = file_get_contents('a.html');
$b = explode(' ' , $a);
$phpsearch = $_POST['htmlsearch'];
if ($phpsearch != null) {
   foreach ($a as $key) {
       if ($phpsearch == $key) {
            echo '<b>Search for ' . $phpsearch . ' - <a href=\'abc.html\' target=\'_blank\'>aaa</a></b><br>';
            break;
      }
   }
}

如果单词旁边有逗号或点,则搜索不显示!

我在第5行试过这个 - &gt; if($ phpsearch == $ key。',') 它不工作! 我可以将变量$ key与符号合并,还是从变量$ a中排除符号? 提前谢谢!

1 个答案:

答案 0 :(得分:0)

要从$ a中删除标点符号,请尝试使用以下正则表达式:

# to keep letters & numbers
$a = preg_replace('/[^a-z0-9]+/i', '_', $a); # or...
$a = preg_replace('/[^a-z\d]+/i', '_', $a);


# to keep letters only
$a = preg_replace('/[^a-z]+/i', '_', $a); 

# to keep letters, numbers & underscore
$a = preg_replace('/[^\w]+/', '_', $a);

# same as third example; suggested by @tchrist
$a = preg_replace('/\W+/', '_', $a);

改编自citation

的已接受答案