还有其他方法来执行这个远离LIKE和REGEX的操作吗?我正在尝试检查字符串A是否包含字符串B或字符串B的一小部分,如string A = "United State of America" string B = "America"下面的示例
如果字符串B存在于String A中,则应检查它。
目前我已经使用了REGEXP和类似,但有时它会给我错误的输出,请检查下面的代码,并给出任何建议。
//Using REGEXP
$first_five = substr($data[0], -7, 7);
$query = mysql_query("SELECT * FROM 'football' WHERE 'TEAMS' REGEXP '$first_five'");
//Using LIKE
$query = mysql_query("SELECT * FROM 'football' WHERE 'TEAMS' LIKE '%$first_five%'");`你知不知道哪个查询可以像我上面的查询那样执行相同的工作?
发布于 2017-07-30 14:21:09
mysql> SELECT INSTR('foobarbar', 'bar');
+---------------------------+
| INSTR('foobarbar', 'bar') |
+---------------------------+
| 4 |
+---------------------------+
1 row in set (0.01 sec)
mysql> SELECT INSTR('xbar', 'foobar');
+-------------------------+
| INSTR('xbar', 'foobar') |
+-------------------------+
| 0 |
+-------------------------+
1 row in set (0.00 sec)发布于 2017-07-30 15:51:30
首先:关于弃用警告的通知:
mysql_query警告这个扩展在PHP5.5.0中被废弃,它在PHP7.0.0中被删除。相反,应该使用MySQLi或PDO_MySQL扩展。
放在第二位:您应该使用转义参数(小心,也不推荐)
$sql = "SELECT * FROM football WHERE TEAMS LIKE '%" .
mysql_real_escape_string($first_five) .
"%'";
$query = mysql_query($sql);https://stackoverflow.com/questions/45400754
复制相似问题