如何在php中替换/删除字符串中的单词

时间:2015-03-04 09:20:29

标签: php

我有这样的字符串:

SELECT * FROM `backplanechanneldecoder20141002`  AND  WHERE  Z0 = '1'

我想从中删除AND。我尝试使用

$sql_total = str_replace("AND WHERE", "WHERE", $sql_total);
$sql_total = str_replace("AND  WHERE", "WHERE", $sql_total);

但它没有用。

1 个答案:

答案 0 :(得分:3)

看起来“AND”和“WHERE”之间有多个空格。您可以使用正则表达式处理此问题:

$sql_total = preg_replace('/AND\s+WHERE/', 'WHERE', $sql_total);

表达式的\s+部分与一个或多个空格字符匹配。

正如评论中所提到的,目前还不清楚你是如何在第一时间结束这个字符串的。看起来好像是在尝试以编程方式生成查询字符串,但没有正确处理第一个/唯一的“WHERE”子句。解决这个问题的原因显然更好,而不是修复症状。