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事实上,在这种情况下,甚至没有理由包括空间。。。