我试图只匹配" arcfour"而不是arcfour128或arcfour256。什么是正确的正则表达式线?
select * from TABLE where COLUMN REGEXP ==> arcfour <===;
我只需要什么样的regexp语法来查找arcfour?
COLUMN中的示例列表:
arcfour
arcfour128
arcfour256
答案 0 :(得分:3)
您可以使用^
选择字符串的开始,并使用$
选择结束。这意味着^
和$
中的所有内容都将是唯一可以存在的数据。它必须是独立的,不被任何额外的字符或符号包围。
例如,^data$
仅在字符串data
时匹配。在它之前或之后的任何数量的字母将导致字符串不匹配。因此,1data
和data2
将不匹配。
在您的情况下,您应该使用以下代码和RegEx:
select * from TABLE where COLUMN REGEXP '^arcfour$'
请注意,如果您希望表数据仅匹配一个特定字符串,则不使用RegEx是有意义的,但使用=
,如下所示:
select * from TABLE where COLUMN = 'arcfour'
答案 1 :(得分:-1)
如果你想要完全匹配,你不应该首先使用正则表达式,只是做一个相等的匹配。
SELECT * FROM table WHERE column = 'arcfour'