Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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中的空白正则表达式_Mysql_Regex - Fatal编程技术网

mysql中的空白正则表达式

mysql中的空白正则表达式,mysql,regex,Mysql,Regex,根据,我们可以使用[[:space:][]*而不是\s* 所以我有这个疑问 select * from onet.tools_and_technology where t2_example Rlike '[[:space:]]*C++[[:space:]]*'; 但它给了我这个错误 错误代码:1139。从中获取错误“重复运算符操作数无效” 正则表达式 我在这里错过了什么 字符与正则表达式中的+字符类似:它们是元字符 您需要用\转义每个字符。因为您在字符串中工作,所以需要转义:'[[:spac

根据,我们可以使用
[[:space:][]*
而不是
\s*
所以我有这个疑问

select * from onet.tools_and_technology where t2_example  Rlike '[[:space:]]*C++[[:space:]]*';
但它给了我这个错误

错误代码:1139。从中获取错误“重复运算符操作数无效” 正则表达式


我在这里错过了什么

字符与正则表达式中的
+
字符类似:它们是元字符

您需要用
\
转义每个字符。因为您在字符串中工作,所以需要转义:
'[[:space:][]*C\\+\+[:space:][]*'


您的问题可以不用正则表达式来解决:但是,<代码>类似'%C++ %' < /COD>


如果你想匹配
c++
的话,它应该是
c\++
,很抱歉告诉你,但是它会产生同样的错误。如果你不知道我在查询中的意思,
++
c\++
的两倍,我想他们会意识到这是一种编程语言。但Regex中的
+
表示“一个或多个先前的令牌”。所以
C++
将匹配
C
CC
CCC
,等等。但是
C++
并不意味着什么<代码>\+匹配文字符号“+”。是的,我知道,但有些技能不需要空间,有些技能需要空间,所以我使用正则表达式来满足这两个要求cases@Abeerzaroor事实上,在这种情况下,甚至没有理由包括空间。。。