Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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,我对MySQL regexp一无所知,在网上搜索了3天后,我不得不放弃 我需要在数据库中找到单词,确切的单词。但我也需要注意标点符号(如果我能提供标点符号列表就好了)。这些词可能在数据库记录的开始、结尾或中间。它们还可以将唯一的数据输入到记录中。我不在乎大写或小写的单词 因此,在这种情况下,我需要检索单词: 狮子-狮子狮子,-狮子;-狮子。。。(点)-狮子…(hellip)等(可能有许多其他标点符号) 或 “狮子”-“狮子”-(狮子)-狮子/等等 但这些都是错误的: Lion.tiger-Lio

我对MySQL regexp一无所知,在网上搜索了3天后,我不得不放弃

我需要在数据库中找到单词,确切的单词。但我也需要注意标点符号(如果我能提供标点符号列表就好了)。这些词可能在数据库记录的开始、结尾或中间。它们还可以将唯一的数据输入到记录中。我不在乎大写或小写的单词

因此,在这种情况下,我需要检索单词:

狮子-狮子狮子,-狮子;-狮子。。。(点)-狮子…(hellip)等(可能有许多其他标点符号)

“狮子”-“狮子”-(狮子)-狮子/等等

但这些都是错误的:


Lion.tiger-Lions-superlion-您应该能够使用单词边界。否则,您必须声明您愿意接受的所有字符

select id,myRecord from my_records where myRecord REGEXP '[[:<:]]lion[[:>:]]';

.

您能提供一些您尝试过的图案吗?你检查过类似于
[a-zA-Z\.\:;\\\/\?\,\\'\“\-]+
的东西吗?它会匹配字母表和提到的字符一次或多次。好吧,我想我已经测试过在“整词”、“带分隔符的词”、“精确词”这个名称下我能找到的任何东西“等,从Stackoverflow开始输入。将是一个很长的列表。。。问题是,它们都没有提供一个完整的例子,以标点符号作为分隔符,或者只是标点符号作为。。。标点符号。你的解释很好,直到我意识到
是有效的,
@Julien你没有费心阅读完整的问题,对吗?请确切解释为什么我玩过的一些模式通过,而另一些模式失败[[:
select id,myRecord from my_records where
myRecord REGEXP '[[:<:]]lion[[:>:]]' and
myRecord NOT REGEXP '[[:<:]]lion\.[[:alpha:]]';