ALTER function [dbo].[WholeWordReplace](
@s nvarchar(1000) --要搜索的字符串
,@s1 nvarchar(200) --要查找的字符串
,@s2 nvarchar(200) --替换字符串
)
returns nvarchar(1000)
as
begin
declare
@result nvarchar(1000) --返回值
,@prec nchar(1) --前一个字符
,@succ nchar(1) --后一个字符
,@i int --位置
;
SELECT @i=charindex(@s1, @s, 1);
while @i>0
begin
SELECT @prec=substring(@s,@i-1,1)
,@succ=substring(@s,@i+len(@s1),1);
--判断此字符串的前后字符, 在前后字符都不是字母、数字、_、@、#、$(命名规则中所有允许的字符)的情况下,对其替换
if (@prec < 'a' or @prec > 'z') and (@prec < 'A' or @prec > 'Z')
AND (@prec < '0' or @prec > '9')
AND (@prec!='_') AND (@prec!='@') AND (@prec!='#') AND (@prec!='$')
and (@succ < 'a' or @succ > 'z') and (@succ < 'A' or @succ > 'Z')
AND (@succ < '0' or @succ > '9')
AND (@succ!='_') AND (@succ!='@') AND (@succ!='#') AND (@succ!='$')
begin
SELECT @s = stuff(@s, @i, len(@s1), @s2), @i=@i+Len(@s2)-1;
end
SELECT @i=charindex(@s1, @s, @i+1);
end
SELECT @result=@s
return @result
END
参考正则替换:
http://blog.csdn.net/coleling/archive/2011/01/27/6166419.aspx
分享到:
相关推荐
在VB(Visual Basic)编程中,替换函数是一个非常常见的需求,它用于在字符串中查找特定的子串并将其替换为另一个子串。虽然VB标准库提供了内建的Replace函数来执行这个任务,但有时开发者可能需要自定义更复杂的...
针对这种情况,开发人员经常寻找更高效的替代方案,如在本案例中提到的“Q_Replace.pas”文件所包含的快速字符串替换函数。 `StringReplace`函数的语法如下: ```delphi function StringReplace(const S, Find, ...
为了解决这个问题,很多开发者会自行编写一些实用的字符串替换函数来满足项目需求。下面我们就基于题目中的信息,详细探讨一下如何在PB程序中实现一个常用的字符串替换函数。 ### PB程序中常用的字符串替换函数 ##...
- **兼容性**:替换函数的参数列表、参数类型和数量必须与原函数完全匹配,且返回值相同。替换函数通常用于监控而非改变原函数的功能。 5. **安全性与注意事项** 动态替换内核函数是一项高风险操作,如果处理不当...
在SQL Server中使用正则替换函数时,需要注意以下几点: 1. 正则表达式的性能通常低于非正则函数,因此在大数据量操作时,应考虑优化查询或提前预处理数据。 2. 验证输入,避免恶意用户通过正则表达式执行SQL注入...
例如,`Replace()`函数是ASP中最基础的字符串替换函数,它接受三个参数:源字符串、要查找的子串以及替换后的字符串。但这个函数对于处理复杂的HTML标签替换可能会显得力不从心,因为它不具备识别HTML标签结构的能力...
在main函数中,首先输入了原字符串、匹配字符串和替换字符串。然后,使用strReplace函数将替换字符串替换到原字符串中的指定部分。最后,输出了替换后的字符串。 小结 这个小程序实现了三个功能:统计字符串中字符...
在C语言中,实现一个`Replace`替换函数是一项基本任务,它可以帮助我们处理字符串,将字符串中的特定子串替换为另一个新的子串。这个功能在许多编程场景中都非常有用,例如文本处理、日志分析等。下面我们将深入探讨...
4. **使用`preg_replace`**:除了匹配外,`preg_replace`函数用于替换字符串中的某些部分。比如,我们想把所有的邮箱地址前加上"mailto:": ```php $email = "example@example.com"; $pattern = "/\b[A-Za-z0-9....
这通常涉及字符串操作函数,如切分、查找、替换等。 3. **哈希表或字典数据结构**:为了快速匹配拼音和汉字,开发者可能会使用哈希表或字典(在Python等语言中)来存储拼音和汉字的对应关系,实现O(1)时间复杂度的...
这个函数使用POSIX扩展进行正则表达式匹配,但它的效率较低且不支持PCRE(Perl Compatible Regular Expressions)的所有特性。因此,开发者通常会将`ereg`替换为`preg_match`,后者是PHP中更强大的正则表达式处理...
这个函数将匹配到的英文字符替换为空字符串,从而达到提取的效果。 至于数字的提取,可以类似地创建一个函数,只需改变正则表达式的模式为`[0-9]`。 以上就是关于Excel处理字符串,特别是自定义函数提取特定字符的...
这个函数在处理大量数据时特别有用,特别是在需要在不同表格之间进行信息匹配和替换的时候。下面我们将深入探讨VLOOKUP函数的工作原理、用法以及如何在实际工作中有效地运用它。 **VLOOKUP函数的基本结构** VLOOK...
字符串会直接用来替换匹配的部分,而函数则会被调用,其返回值将作为替换文本。如果函数返回的是字符串,那么匹配的内容会被替换;如果函数返回的是非字符串值,会被转换成字符串再进行替换。 ### 返回值 `replace...
Ereg_replace 函数是 PHP 中的一个正规表达式替换函数,用于替换文本,当参数 pattern 与参数 string 中的字串匹配时,他就被参数 replacement 的内容所替换。 Eregi 函数是 PHP 中的一个正规表达式函数,用于在...
- 这个函数允许我们使用正则表达式`pattern`来匹配需要替换的部分,并用`replacement`进行替换。`position`指定匹配的起始位置,`occurrence`指定替换第几次出现的匹配,`flags`是可选的正则匹配标志,如全局匹配...
本文将详细介绍如何利用`REGEXP_REPLACE`函数来实现字符串替换功能,特别是在复杂的字符串模式匹配与替换方面。 #### 1. REGEXP_REPLACE函数简介 `REGEXP_REPLACE`函数是Oracle提供的一个强大的工具,用于基于正则...
标题中提到的"C#正则函数用法实例【匹配、替换、提取】"意味着本文将介绍C#(C Sharp)编程语言中用于正则表达式匹配、替换和提取内容的函数用法,具体通过实际的编程例子来展示。描述中明确指出本文将结合实例分析...
MySQL中的替换功能主要涉及到对数据库表中字段内特定字符串的替换操作,这通常通过`REPLACE()`函数来实现。在数据库管理和数据处理中,这个功能非常实用,可以用于更新已存在的数据,使其满足新的格式或者需求。下面...
本文将详细介绍JavaScript中字符串替换函数replace的使用方法,以及如何一次性替换所有匹配项。 首先,我们需要了解JavaScript中的基本替换语法。在JavaScript中,字符串对象提供了一个replace方法,用于实现替换...