我正在尝试使用正则表达式查询MYSQL数据库。我希望使用此模式1234X32X12获取列下的值。
我写了一些伪代码,但我对正则表达式不熟悉,所以我希望有人可以帮助我。
代码:
if ($transposed_array[$i][0] starts with number)
{
$sid = regex something /^[0-9]*/
$gid = regex something /X[0-9]*X/
$gid = remove first and last character from $gid
$qid = regex something /[0-9]*$/
$question_text = mysql_query("select question from table where sid = ".$sid." and gid = ".$gid." and qid = ".$qid." limit 1");
$transposed_array[$i][0] = $question_test
}
任何帮助将不胜感激!
答案 0 :(得分:1)
MySQL在其SQL命令中直接支持正则表达式匹配,请查看its manual:
select col from table where col regexp '^h';
答案 1 :(得分:0)
我建议您阅读Mysql-Manual的相应部分,其中详细介绍了如何执行正则表达式搜索。
答案 2 :(得分:0)
您可以参考mysql
的正则表达式匹配函数。
答案 3 :(得分:0)
如果它是你正在分裂的X那么这将会:
$var = "1234X32X12";
$bits = explode("X", $var);
var_dump( $bits);
array
0 => string '1234' (length=4)
1 => string '32' (length=2)
2 => string '12' (length=2)
但我觉得X可以是任何字母字符,是吗?