MYSQL正则表达式匹配方括号之间的任何单词

时间:2017-10-12 15:33:20

标签: mysql regex

我必须找到列值匹配的特定列的所有值,如[name]

我不应该得到像[a] + [b]或[a]> [b]或[a]%[b] = [c]

这样的值

所以我基本上不需要除了方括号和得分

之外的具有特殊字符的列值

示例:应返回[test_123]。

我试过

select * from table_name where column_name REGEXP '^[[][^+-></%]';

这只是试图查看[之后是否有任何特殊字符]但是如何查看整个列值中是否有任何特殊字符,我们是否应该使用反斜杠来定义MySQL中的特殊字符?

我试过https://regexr.com/并且我已经获得了所需的正则表达式

(\[)\w+[^\+\=\/\*\%\^\!](\])

但我无法在MySQL中做同样的事情

1 个答案:

答案 0 :(得分:0)

***更新**

{
"condition": "'topic1' in topics",
"data": {
    "message": "test"
    }
}

这似乎适用于你正在寻找的东西。

此外,您的查询错误,我相信它应该看起来像:

(\[[^\_]+])+