Sqlserver 正则替换函数的一种实现

--函数

IF OBJECT_ID(N‘dbo.RegexReplace‘) IS NOT NULL
DROP FUNCTION dbo.RegexReplace
GO
CREATE FUNCTION dbo.RegexReplace
(
@string VARCHAR(MAX), --被替换的字符串
@pattern VARCHAR(255), --替换模板
@replacestr VARCHAR(255), --替换后的字符串
@IgnoreCase INT = 0 --0区分大小写 1不区分大小写
)
RETURNS VARCHAR(8000)
AS
BEGIN
DECLARE @objRegex INT, @retstr VARCHAR(8000)
--创建对象
EXEC sp_OACreate ‘VBScript.RegExp‘, @objRegex OUT
--设置属性
EXEC sp_OASetProperty @objRegex, ‘Pattern‘, @pattern
EXEC sp_OASetProperty @objRegex, ‘IgnoreCase‘, @IgnoreCase
EXEC sp_OASetProperty @objRegex, ‘Global‘, 1
--执行
EXEC sp_OAMethod @objRegex, ‘Replace‘, @retstr OUT, @string, @replacestr
--释放
EXECUTE sp_OADestroy @objRegex
RETURN @retstr
END
GO

用法示例(替换空格):

--替换空格
print dbo.RegexReplace(‘0   _ 276 _ 5‘, ‘\s+‘, ‘‘,1)

--输出:0_276_5
时间: 2024-12-20 09:37:24

Sqlserver 正则替换函数的一种实现的相关文章

asp 正则替换函数

Function RegExpTest(patrn,str1,strng) Dim regEx',str1 ' 建立变量 'str1 = "The quick brown fox jumped over the lazy dog."Set regEx = New RegExp ' 建立正则表达式 regEx.Pattern = patrn ' 设置模式 regEx.IgnoreCase = True ' 设置是否区分大小写 'RegExpTest = regEx.test(strng)

php正则替换函数-----preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )

preg_replace - 执行一个正则表达式的搜索和替换 说明 mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] ) 搜索subject中匹配pattern的部分, 以replacement进行替换. 参数 pattern 要搜索的模式.可以使一个字符串或字符串数组. 可以使用一些PCRE修饰符. replacement

PHP中正则替换函数preg_replace用法笔记

今天应老板的需求,需要将不是我们的页面修改一个链接,用js+iframe应该也能实现,但是我想尝试一下php实现方法. 首先你得先把别人的页面download到你的php中,实现方法可以用curl, file,这里有一篇文章写的不错http://www.11jn.com/phpbb/viewtopic.php?f=31&t=1390,这里就不多说. 然后就是用正则表达式找到你的链接,因为是具体的链接,就直接写了,比如百度 (http\:\/\/www.baidu.com) 下面就是主要函数 pr

SQL SERVER 正则替换

use pubdbgo IF OBJECT_ID(N'dbo.RegexReplace') IS NOT NULL DROP FUNCTION dbo.RegexReplace GO --开始创建正则替换函数  CREATE FUNCTION DBO.RegexReplace (  @string VARCHAR(MAX), --被替换的字符串  @pattern VARCHAR(255), --替换模板  @replacestr VARCHAR(max), --替换后的字符串  @Ignore

php 函数strtr 替换函数实例解析 strtr 速度比较快

先来看看这个php字符串替换函数 PHP字符串替换函数strtr()的两种状态 strtr(string,from,to) 或者strtr(string,array) 首先针对PHP字符串替换函数strtr()第一种方式 我们看看下面的举例: <?php echo strtr("I Love you","Lo","lO"); ?> 得到的结果是 I lOve yOu 这个结果提醒我们 1.strtr它是区分大小写的 2.PHP字符串替

PHP函数preg_replace() 正则替换所有符合条件的字符串

PHP preg_replace() 正则替换,与JavaScript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素. preg_replace (正则表达式, 替换成, 字符串, 最大替换次数[默认-1,无数次], 替换次数) 大部分语言的正则表达式都是差不多的,不过也有细微的差异. PHP 正则表达式 正则字符 正则解释 \ 将下一个字符标记为一个特殊字符.或一个原义字符.或一个向后引用.或一个八进制转义符.例如,“\n”匹配字符“n”.“\\n”匹

Sqlserver替换函数Replace

Sqlserver中Replace函数:实现字段中某个字符串批量替换. 注意:强烈建议替换前备份数据库以免发生灾难性后果. update article set [Content]=replace([content],'www.abc.com','www.bbb.com'); 说明:将content字段中的 www.abc.com  替换===> www.bbb.com 如果content字段类型为text,会报错:参数数据类型 text 对于 replace 函数的参数 1 无效. 对text

PHP preg_replace() 正则替换所有符合条件的字符串

PHP preg_replace() 正则替换,与Javascript 正则替换不同,PHP preg_replace() 默认就是替换所有符号匹配条件的元素 需要我们用程序处理的数据并不总是预先以数据库思维设计的,或者说是无法用数据库的结构去存储的. 比如模版引擎解析模版.垃圾敏感信息过滤等等. 一般这种情况,我们用正则按我们的规则去匹配preg_match.替换preg_replace. 但一般的应用中,无非是些数据库CRUD,正则摆弄的机会很少. 根据前面说的,两种场景:统计分析,用匹配:

常用JS正则匹配函数

//校验用户名:只能输入1-30个字母 function isTrueName(s) { var patrn=/^[a-zA-Z]{1,30}$/; if (!patrn.exec(s)) return false return true } //校验密码:只能输入6-20个字母.数字.下划线 function isPasswd(s) { var patrn=/^(/w){6,20}$/; if (!patrn.exec(s)) return false return true } //校验普通