我有这个函数从字符串中删除一个特定的单词,这个函数使用单词列表。所以我有一个查询,我想删除所有类型的字符串,比如(number,number)
这是mycode:
$wordlist = array("LIMIT", "0, 5");
foreach ($wordlist as &$word) {
$word = '/'b' . preg_quote($word, '/') . ''b/';
}
$sql = preg_replace($wordlist, '', $sql);
var_dump($sql);
正如你所看到的,如果函数得到LIMIT或0,5,它将被删除,我如何删除任何类型的单词,如"数字,数字",所以查询将是LIMIT 10,40,它也将被删除
了解字符串的格式是否为"is_number,is_number"。
谢谢
如http://snipplr.com/view/65038/一个简单的方法是:
function stripCp($string )
{
$wordlist = array("CP", "case", "postale","Case","Postale","cp");
foreach($wordlist as $word)
{
$string = str_replace($word, "", $string);
}
return $string;
}
使用preg_replace()删除正则表达式中标记的字符串
$pattern = '/'d+,'s*'d+/';
$replacement = '';
//wordlist version
$wordlist = array("LIMIT", "0, 5");
foreach($wordlist as &$string){
$string=preg_replace($pattern, $replacement, $string);
}
//query version
$query="SELECT * FROM table LIMIT 0, 5";
$result=preg_replace($pattern, $replacement, $query);