MySQL 正则表达式(Regexp)的简朴引见
1、它供应了壮大而天真的婚配形式,能够协助我们为数据库系统完成壮大的搜刮实用程序。
2、regexp是实行正则表达式形式婚配时运用的运算符,rlike是同义词。
3、它还支撑很多元字符,这些元字符在实行形式婚配时能够供应更大的天真性和掌握。
4、反斜杠用作转义字符。假如运用了双反斜杠,则仅在形式婚配中斟酌。
5、不辨别大小写。
以下是正则形式表,能够与REGEXP 操纵符一同运用。【相干视频教程引荐:MySQL视频教程】
形式 | 形貌(细致婚配什么) | ||||
^ | 婚配字符串的最先位置。 | ||||
$ | 婚配字符串的完毕位置。 | ||||
. | 婚配除 "\n" 以外的任何单个字符。 | ||||
[...] | 婚配所包括的恣意一个字符。 | ||||
[^...] | 婚配未包括的恣意字符。 | ||||
? | 婚配它前面的零个或一个子表达式(字符串)。 | ||||
* | 婚配它前面的零个或多个子表达式(字符串)。 | ||||
+ | 婚配它前面的一个或多个子表达式(字符串)。 | ||||
[abc] | 婚配方括号之间列出的任何字符。 | ||||
[^abc] | 婚配方括号之间未列出的任何字符。 | ||||
[A-Z] | 婚配任何大写字母。 | ||||
[a-z] | 婚配任何小写字母。 | ||||
[0-9] | 婚配从0到9的任何数字。 | ||||
[[:<:]] | 婚配单词的开首。 | ||||
[[:>:]] | 婚配单词的末端。 | ||||
[:class:] | 婚配字符类,即[:alpha:]婚配字母,[:space:]婚配空格,[:punct:]婚配标点符号,[:upper:] 婚配上层字母。 | ||||
p1|p2|p3 | 婚配任何形式,p1或 p2或p3 | ||||
{n} | 婚配n前面元素的子表达式 | ||||
{m,n} | 婚配m到前面元素的n个子表达式 |
运用示例:
下面经由过程简朴的示例来引见MySQL 正则表达式(Regexp)的运用。
1、婚配字符串的开首(^):
婚配name字段以'sa'开首的一切数据,例:Sample-sam,samarth。
SELECT name FROM student_tbl WHERE name REGEXP '^sa';
2、婚配字符串的末端($):
婚配name字段以'on'末端的一切数据,例:norton,merton。
SELECT name FROM student_tbl WHERE name REGEXP 'on$';
3、婚配它前面的字符串的零或一个子表达式(?):
婚配title字段包括'com'的一切数据,例:comedy ,romantic comedy。
SELECT title FROM movies_tbl WHERE title REGEXP 'com?';
4、婚配任何形式p1或p2或p3(p1 | p2 | p3):
婚配name字段包括'be'或'ae'的一切数据,例: Abel,Baer。
SELECT name FROM student_tbl WHERE REGEXP 'be|ae' ;
5、婚配方括号([abc])之间列出的任何字符:
婚配name字段包括'j'或'z'的一切数据,例:Lorentz,Rajs。
SELECT name FROM student_tbl WHERE REGEXP '[jz]' ;
6、婚配'a'到'z' 之间的任何单个小写字母([a-z])([a-z]和(.)):
婚配name字段中第一位包括“b”和“g”范围内字母,第二位包括任何字符,第三位包括字母'a'的一切字符串数据,例: Tobias,sewall。
婚配任何单个字符(.)
SELECT name FROM student_tbl WHERE REGEXP '[b-g].[a]' ;
7、婚配方括号之间未列出的任何字符([^ abc]):
婚配一切不包括'j'或'z'的称号。例: nerton,sewall。
SELECT name FROM student_tbl WHERE REGEXP '[^jz]' ;
8、婚配单词末端位置的子字符串[[:>:]]
婚配title字段中以字符“ack”末端的一切数据,例:Black。
SELECT title FROM movies_tbl WHERE REGEXP 'ack[[:>:]]';
9、婚配单词开首位置的子字符串[[:<:]]
婚配title字段中以字符“for”开首的一切数据,例 :Forgetting Sarah Marshal.。
SELECT title FROM movies_tbl WHERE title REGEXP '[[:<:]]for';
10、婚配字符类[:class:]:
ie [:lower:] - 小写字符,[:digit:] - 数字字符等。
婚配title字段中仅包括字母字符的一切数据,例:stranger things, Avengers。
SELECT title FROM movies_tbl WHERE REGEXP '[:alpha:]' ;
以上就是本篇文章的全部内容,愿望能对人人的进修有所协助。更多精彩内容人人能够关注ki4网相干教程栏目!!!
以上就是MySQL怎样运用正则表达式?(代码示例)的细致内容,更多请关注ki4网别的相干文章!