2016-09-17 108 views
0

我想創建一個頁面,將搜索其他頁面! 除了一個細節,所有的工作! 下面是部分代碼:創建一個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行上試過了 - > if($ phpsearch == $ key。',') 它不工作! 我可以將變量$ key與符號合併或從變量$ a中排除符號嗎? 在此先感謝!

回答

0

從$刪除標點試試這些正則表達式:

citation

# 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); 

從接受的答案改編