搜索字符串
如果你需要检测一个字符串中是否包含另一个字符串,你可以使用函数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()匹配一个字符串的第一次出现是从字符串的右边开始搜索。