我有以下正则表达式:
[^A-Z0-9\.\s\%\$\/\-\+]
我在PHP中使用它如下所示:
preg_match("/[^A-Z0-9\.\s\%\$\/\-\+]/", $input_line, $output_array);
但是当我尝试在phpMyAdmin中使用相同的正则表达式时,我会收到错误,或者它没有按预期工作。
我应该如何更改它以使其在MySQL语法中工作?
答案 0 :(得分:1)
尝试使用此用户发布的内容:
SELECT * FROM person WHERE name not REGEXP '[0-9]'
从这里Regular expressions in Mysql/phpmyadmin
phpmyadmin会使用数据库语法而不是php代码,例如:
PHP语法(如何在PHP中使用正则表达式)
$regex = "/[^A-Z0-9\.\s\%\$\/\-\+]/";
preg_match($regex, $input_line, $output_array);
SQL语法(用于查询MySQL数据库的SQL数据库)
SELECT * FROM person WHERE name not REGEXP '[0-9]'
答案 1 :(得分:0)
\s
(以及其他几个\
个东西)。取而代之的是使用[:SPACE:]
。