通过wordlist从字符串中删除特定单词

时间:2013-02-10 10:07:02

标签: php


我有这个函数从String中删除一个特定的单词,这个函数使用单词列表。 所以我有一个查询,我想删除所有类型的字符串,如(数字,数字)
这是我的代码:

$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”。
感谢。

2 个答案:

答案 0 :(得分:2)

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;
}

答案 1 :(得分:0)

使用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);