0


文字列から特定の単語を削除するこの関数があります。この関数は単語リストを使用します。クエリがあり、(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を取得すると削除されます。「number、number」などの任意のタイプの単語を削除すると、クエリはLIMIT 10、40になります。これも削除されます。
文字列が「is_number、is_number」の形式であるかどうかを確認します。
ありがとう。

4

2 に答える 2

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);
于 2013-02-10T10:51:42.387 に答える