Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mysql REGEXP中转义方括号?_Mysql_Regex - Fatal编程技术网

如何在mysql REGEXP中转义方括号?

如何在mysql REGEXP中转义方括号?,mysql,regex,Mysql,Regex,我有视频嵌入代码存储在数据库表中。我们使用多种视频源,包括YouTube、Viddler和本地存储的flash文件。我需要找到所有带有flash文件的记录。闪存记录的主体字段如下所示: [swf file="/sites/default/files/lecture-video/2010_02_beier_schanzer.swf" width="702" height="560"] SELECT * FROM `node_revisions` inner join node on node_r

我有视频嵌入代码存储在数据库表中。我们使用多种视频源,包括YouTube、Viddler和本地存储的flash文件。我需要找到所有带有flash文件的记录。闪存记录的主体字段如下所示:

[swf file="/sites/default/files/lecture-video/2010_02_beier_schanzer.swf" width="702" height="560"]
SELECT * FROM `node_revisions` inner join node on node_revisions.nid = node.nid where node.type = "video" and node_revisions.body REGEXP "^[swf"
我希望做这样的事情:

[swf file="/sites/default/files/lecture-video/2010_02_beier_schanzer.swf" width="702" height="560"]
SELECT * FROM `node_revisions` inner join node on node_revisions.nid = node.nid where node.type = "video" and node_revisions.body REGEXP "^[swf"
但出现以下错误:

39-从regexp获得错误“括号([])未平衡”


当括号是我要查找的第一个字符时,如何转义它?

必须使用两个反斜杠

regexp '^\\[swf'

谢谢我不知道为什么我没有想到要尝试双反斜杠。如果有人想知道为什么需要两个斜杠而不是一个斜杠来逃避某些东西,请参阅答案。