默认我们在ASP中用Replace的时候是会区分大小写的,如何让Replace不区分呢,这里简单介绍下,方便需要的朋友
我们先来看一看 Replace 的详细参数
描述 返回字符串,其中指定数目的某子字符串被替换为另一个子字符串。 语法 Replace(expression, find, replacewith[, compare[, count[, start]]])
Replace 函数的语法有以下参数:
参数 描述 expression 必选项。 字符串表达式 包含要替代的子字符串。 find 必选项。被搜索的子字符串。 replacewith 必选项。用于替换的子字符串。 start 可选项。expression 中开始搜索子字符串的位置。如果省略,默认值为 1。在和count 关联时必须用 count 可选项。执行子字符串替换的数目。如果省略,默认值为 -1,表示进行所有可能的替换。在和 start 关联时必须用。 compare 可选项。指示在计算子字符串时使用的比较类型的数值。有关数值,请参阅“设置”部分。如果省略,缺省值为 0 ,这意味着必须进行二进制比较。
设置 compare 参数可以有以下值: 常数 值 描述 vbBinaryCompare 0 执行二进制比较。 vbTextCompare 1 执行文本比较。
返回值 Replace 返回以下值: 如果 Replace 返回 expression 为零长度 零长度字符串 ("")。 expression 为 Null 错误。 find 为零长度 expression 的副本。 replacewith 为零长度 expression 的副本,其中删除了所有由 find 参数指定的内容。 start > Len(expression) 零长度字符串。 count 为 0 expression 的副本。
说明 Replace 函数的返回值是经过替换(从由 start 指定的位置开始到 expression 字符串的结尾)后的字符串,而不是原始字符串从开始至结尾的副本。 下面的示例利用 Replace 函数返回字符串:
复制代码 代码如下: Dim MyString MyString = Replace("XXpXXPXXp", "p", "Y") '二进制比较从字符串左端开始。返回 "XXYXXPXXY"。 MyString = Replace("XXpXXPXXp", "p", "Y", '文本比较从第三个字符开始。返回 "YXXYXXY"。3,, -1, 1)
方法一: 直接用ASP自带函数replace 这也是最简单的方法
title=replace(title,"DF","SD",1,-1,1)
replace函数参数详解: 参数1:源字符串 参数2:要被替换的字符 参数3:新的字符。,既,要将源字符串中的某些字符,替换成新指定的字符 参数4:值为1.指定从第一个字符开始搜索该字符串 参数5:值为-1 指定每一个子串都要被替换 参数6:值为1 指定字符串的比较不区分大小写。
(高亮显示关键字)的两个函数 方法2:用正则不区分大小写替换指定字符 以下是函数源代码:
复制代码 代码如下: '//函数:字符串替换 '//参数:正则表达式,被替换字符串,替换字符串 Public Function ReplaceTest(patrn, mStr, replStr) Dim regEx Set regEx = New RegExp regEx.Pattern = patrn regEx.IgnoreCase = True regEx.Global = True ReplaceTest = regEx.Replace(mStr, replStr) Set regEx = Nothing End Function
|