MySql模式匹配

时间:2012-04-01 15:14:24

标签: mysql regex pattern-matching

我需要一个MySQL模式来匹配一个数字,然后是一个问号。 我需要类似的东西 ...喜欢'%[0-9]?%' 但我不知道如何创建这个正则表达式。

http://dev.mysql.com/doc/refman/5.0/en/pattern-matching.html无济于事。

谢谢!

2 个答案:

答案 0 :(得分:4)

你可以试试这个:

SELECT * FROM YourTable WHERE YourField REGEXP '[0-9]\\?'

这将返回YourField包含数字的行,后跟值中任意位置的?

如果您希望它仅匹配整个字段是数字后跟?。即9?然后您可以使用此正则表达式:

^[0-9]\\?$

答案 1 :(得分:1)

我想你正在寻找这样的东西:

select * from table
where field rlike '[0-9]\\?'

记得逃避问号。否则,它会使数字可选。

Source