栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > 正则表达

数据库中使用正则表达式小结

正则表达 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据库中使用正则表达式小结

本篇文章通过两个示例给大家介绍数据库中使用正则表达式小结,在此不多说,具体内容请看下文详解吧。

示例一:

CREATE FUNCTION dbo.RegExpTest ( 
@source varchar(), --需要匹配的源字符串 
@regexp varchar(), --正则表达式 
@ignorecase bit = --是否区分大小写,默认为false 
) 
RETURNS bit --返回结果-false,-true 
AS 
BEGIN 
--(成功)或非零数字(失败),是由OLE 自动化对象返回的HRESULT 的整数值。 
DECLARE @hr integer 
--用于保存返回的对象令牌,以便之后对该对象进行操作 
DECLARE @objRegExp integer DECLARE @objMatches integer 
--保存结果 
DECLARE @results bit 
 
EXEC @hr = sp_OACreate 'VBscript.RegExp', @objRegExp OUTPUT 
IF @hr <> BEGIN 
SET @results = 
RETURN @results 
END 
 
EXEC @hr = sp_OASetProperty @objRegExp, 'Pattern', @regexp 
IF @hr <> BEGIN 
SET @results = 
RETURN @results 
END 
EXEC @hr = sp_OASetProperty @objRegExp, 'Global', false 
IF @hr <> BEGIN 
SET @results = 
RETURN @results 
END 
EXEC @hr = sp_OASetProperty @objRegExp, 'IgnoreCase', @ignorecase 
IF @hr <> BEGIN 
SET @results = 
RETURN @results 
END 
--调用对象方法 
EXEC @hr = sp_OAMethod @objRegExp, 'Test', @results OUTPUT, @source 
IF @hr <> BEGIN 
SET @results = 
RETURN @results 
END 
--释放已创建的OLE 对象 
EXEC @hr = sp_OADestroy @objRegExp 
IF @hr <> BEGIN 
SET @results = 
RETURN @results 
END 
RETURN @results 
END 
--打开高级选项
sp_configure 'show advanced options',
reconfigure
--设置选项打开
sp_configure 'Ole Automation Procedures',
reconfigure

示例二:

使用REGEXP和NOT REGEXP操作符(或RLIKE和NOT RLIKE,它们是同义词)进行匹配测试。

扩展正则表达式的一些字符是:

·         ‘.'匹配任何单个的字符。
·         字符类“[...]”匹配在方括号内的任何字符。例如,“[abc]”匹配“a”、“b”或“c”。为了命名字符的范围,使用一个“-”。“[a-z]”匹配任何字母,而“[0-9]”匹配任何数字。
·         “ * ”匹配零个或多个在它前面的字符。例如,“x*”匹配任何数量的“x”字符,“[0-9]*”匹配任何数量的数字,而“.*”匹配任何数量的任何字符。

如果REGEXP模式与被测试值的任何地方匹配,模式就匹配(这不同于LIKE模式匹配,只有与整个值匹配,模式才匹配)。

为了定位一个模式以便它必须匹配被测试值的开始或结尾,在模式开始处使用“^”或在模式的结尾用“$”。

mysql实例:

查询myname中以w开头的数据:

查询myname中以g结尾的数据:

查询包含w的数据:

包含六个字符的数据:

可以使用“{n}”“重复n次”操作符:


以上内容是考高分网小编给大家通过两段示例给大家分享的数据库中使用正则表达式小结,希望对大家有所帮助。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/60461.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号