本文共 1891 字,大约阅读时间需要 6 分钟。
正则表达式中的 ^ 符号用于匹配字符串的开头。以下是如何利用这一符号进行查询的示例:
x 开头的记录SELECT * FROM fruits WHERE f_name REGEXP '^x';
此查询会返回所有以 x 开头的记录。例如,xxxx 和 xbabay 都会匹配。
xx 开头的记录SELECT * FROM fruits WHERE f_name REGEXP '^xx';
此查询会筛选出以 xx 开头的记录。例如,只有 xxxx 会被选中。
正则表达式中的 $ 符号用于匹配字符串的结尾。以下是如何利用这一符号进行查询的示例:
e 结尾的记录SELECT * FROM fruits WHERE f_name REGEXP 'e$';
此查询会返回所有以 e 结尾的记录。例如,apple、orange 和 grape 都会被包含在结果中。
go 结尾的记录SELECT * FROM fruits WHERE f_name REGEXP 'go$';
此查询会筛选出以 go 结尾的记录。例如,只有 mngo 会被选中。
正则表达式中的 . 符号匹配任意一个字符。以下是如何利用这一符号进行查询的示例:
r 或 y 的记录SELECT * FROM fruits WHERE f_name REGEXP 'r.y';
此查询会返回所有包含 r 和 y 中任意一个的记录。例如,blackberry、berry 和 cherry 都会被包含。
正则表达式中的 * 符号匹配零个或多个重复的字符。+ 符号则表示至少一个重复的字符。
mn 开头的记录(允许多个 n)SELECT * FROM fruits WHERE f_name REGEXP '^mn*';
此查询会返回所有以 mn 开头,后面可以有零个或多个 n 的记录。例如,melon 和 mngo 都会被包含。
mn 开头的记录(至少一个 n)SELECT * FROM fruits WHERE f_name REGEXP '^mn+';
此查询会返回所有以 mn 开头,后面至少有一个 n 的记录。例如,只有 mngo 会被选中。
正则表达式可以通过直接指定字符串来匹配特定的文本。以下是如何进行查询的示例:
ge 的记录SELECT * FROM fruits WHERE f_name REGEXP 'ge';
此查询会返回所有包含 ge 的记录。例如,orange 会被包含。
ge 或 na 的记录SELECT * FROM fruits WHERE f_name REGEXP 'ge|na';
此查询会返回所有包含 ge 或 na 的记录。例如,orange 和 banana 都会被包含。
正则表达式中的 [] 用于匹配字符集合中的任意一个字符。以下是如何利用这一符号进行查询的示例:
a 或 e 的记录SELECT * FROM fruits WHERE f_name REGEXP '[ae]';
此查询会返回所有包含 a 或 e 的记录。例如,apple、apricot、blackberry 等都会被包含。
正则表达式中的 {} 用于指定字符的重复次数。以下是如何利用这一符号进行查询的示例:
r 的记录SELECT * FROM fruits WHERE f_name REGEXP 'r{2,}'; 此查询会返回所有至少包含两次连续 r 的记录。例如,blackberry、berry 和 cherry 都会被包含。
正则表达式中的 [^...] 用于匹配不在指定集合中的字符。以下是如何利用这一符号进行查询的示例:
101-104 的记录SELECT * FROM fruits WHERE s_id REGEXP '[^101-104]';
此查询会返回所有不在 101 到 104 之间的 s_id 的记录。例如,103、105、107 等都会被包含。
通过合理运用正则表达式中的各个符号,可以对数据库中的记录进行精确匹配。从开头到结尾、任意字符到指定字符串,再到字符集合和重复次数的匹配,都可以通过这些符号实现。
转载地址:http://kzfnz.baihongyu.com/