【MySql】用正则表达式进行搜索

用正则表达式进行搜索


REGEXP后所跟的东西作为正则表达式处理。
**.**是正则表达式语言中一个特殊的字符,表示匹配任意一个字符

SELECT prod_name FROM products WHERE prod_name REGXP ‘.000’ ORDER BY prod_name;

**|**为正则表达式的OR操作符,表示匹配其中之一;

SELECT prod_name FROM products WHERE prod_name REGXP ‘1000|2000’ ORDER BY prod_name;

匹配任一特定单一字符,用[]括起来的字符完成,如[123],字符集也可以被否定,即匹配除这些字符外的任何东西,如[^123]

SELECT prod_name FROM products WHERE prod_name REGXP ‘[123] ton’ ORDER BY prod_name;
[123]定义一组字符,可以匹配1或者2或者3

集合可以用来定义要匹配的一个或多个字符:[0-9],表示可以匹配0-9的任意数字

为了匹配特殊字符,如.、[]、|、-等,必须用\为前导。\-表示查找-
【MySql】用正则表达式进行搜索
【MySql】用正则表达式进行搜索
【MySql】用正则表达式进行搜索
为了匹配特定位置的文本:需要使用特定的定位符:
【MySql】用正则表达式进行搜索

^的双重用途: ^有两种用法。在集合中(用[和]定义),用它来否定该集合,否则,用来指串的开始处。