搜索字符串

如果你需要检测一个字符串中是否包含另一个字符串，你可以使用函数INSTR（）。函数INSTR（）返回一个字符串中所包含的另一个字符串所在的位置。这里有这个函数的一些例子及其返回值：

<%=instr(

“Once upon a time”,”time”)%>

13

<%=instr(

“Once upon a time”,”TIME”)%>

0

缺省情况下，函数INSTR（）从一个字符串的第一个字符开始搜索匹配。但是，你可以提供一个可选参数，用来指定开始搜索匹配的字符位置，如下例所示：

<%=INSTR(2,

”Once upon a time”,”Once”)%>

这个例子中的函数INSTR（）的返回值将是0。虽然目标字符串中出现了字符串Once，但它不是符合条件的匹配，因为比较是从第二个字符开始的。

注意在缺省情况下比较是区分大小写的。在下面的例子中，字符串time不是符合条件的匹配，因为它是小写的：

<%=INSTR(

“Once upon a time”,”TIME”)%>

0

通过使用一个可选参数，你可以强制函数INSTR（）忽略大小写，例如：

<%=INSTR(1,

”Once upon a time”,”TIME”,1)%>

函数中第四个参数指定进行字符串匹配时不区分大小写。当你使用这个参数时，你必须同提供其他的所有参数，包括通常是可选参数的起始位置参数。否则，该函数会被混淆。

函数INSTR（）返回相对于字符串左边的第一个匹配。另一个函数，INSTRREV（），从字符串的右边开始进行匹配。为了区分这两个函数之间的差别，请看下面的两个例子及其返回值：

<%=INSTR(

“Once upon a time”,”n”)%>

2

<%=INSRRREV(

“Once upon a time”,”n”)%>

9

注意，两个函数的返回值都是从字符串左边数的值¾ ¾ 函数INSTRREV（）的返回值是9而不是8。但是函数INSTR（）匹配一个字符串的第一次出现，从字符串的左边开始搜索，而函数INSTRREV（）匹配一个字符串的第一次出现是从字符串的右边开始搜索。