mysql - 搜索查询的正则表达式,如 : word1 * (word2 -word3 -word4) * word5

标签 mysql regex

问题是,要查找排除字符串具体部分中某些词的词序列的正则表达式是什么?

例如,对于搜索请求:

word1 * (word2 -word3 -word4) * word5

(其中*表示任意数量的任意词,-word表示排除词)

匹配的字符串将是:

word1 word99 word2 word98 word97 word5

word1 word2 word5

不匹配:

word1 word99 word2 word98 WORD4 word97 word5

word1 WORD3 word2 word5

附言它用于使用 REGEXP 运算符在 MySQL 中进行搜索。

最佳答案

你不能用 REGEXP 做到这一点,你应该在你的列上创建一个 FULLTEXT 索引并做 FULLTEXT searches , 进行搜索 IN BOOLEAN MODE将为您提供所需的所有功能。

关于mysql - 搜索查询的正则表达式,如 : word1 * (word2 -word3 -word4) * word5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7376960/

相关文章:

php - CSqlDataProvider 复杂查询和 totalItemCount

c++ - Regex C 关于转义字符的帮助

r - 使用(如果可能)函数方法修改基于正则表达式 (regex) 向量的向量

javascript - 将美化后的 JSON 转换回正常格式

java - 如何在 Java 中删除标点符号但保留首字母缩写词和连字符单词?

PHP 7 与 PHP 5——函数的变化

php - 查询数据库好还是从文件中抓取好? PHP & MySQL

mysql - 使用 resultSet.update() 将数据插入到 mySQL 中的 2 个表中时出错

python - 如何将列表中的数据插入MySql数据库?

java - 使用模式拆分字符串时结果为空