ColdFusion中常用几种字符串查找函数

来源:互联网 发布:dis mac-add 编辑:程序博客网 时间:2024/05/01 12:27

[选摘]

字符串操作函数有以下几种:find,findnocase,findoneof,replace,compare

find:Find(substring, string [, start ]),找出substring在string中的起始位置,返回一个数字,如果没有找到,就返回0。这个函数是case sensitive的,就是说是区分大小写的。

findnocase:FindNoCase(substring, string [, start ]),用法同find,只是个函数是大小写不敏感的。

findoneof:FindOneOf(set, string [, start ]),此函数返回set中任意一个字符在string首先出现的位置,也就是说set中的单一字符最先在string中出现的位置,如果没有,则返回0。这个函数是大小写敏感的。

上面三个函数的测试代码如下:
上面三个函数的测试代码如下:

<!---Compare "find","findnocase","findoneof"--->
<cfset stringToSearch = "The quick brown fox jumped over the lazy dog.">
<cfoutput>
#stringToSearch#<br>
##find("the",stringToSearch)##=#find("the",stringToSearch)#<br>
##find("the",stringToSearch,35)##=#find("the",stringToSearch,35)#<br>
##find("no such substring",stringToSearch)##=#find("no such substring",stringToSearch)#<br>
<br>
##findnocase("the",stringToSearch)##=#findnocase("the",stringToSearch)#<br>
##findnocase("the",stringToSearch,5)##=#findnocase("the",stringToSearch,5)#<br>
##findnocase("no such substring",stringToSearch)##=#findnocase("no such substring",stringToSearch)#<br>
<br>
##findoneof("aeiou",stringToSearch)##=#findoneof("aeiou",stringToSearch)#<br>
##findoneof("aeiou",stringToSearch,4)##=#findoneof("aeiou",stringToSearch,4)#<br>
##findoneof("@%^*()",stringToSearch)##=#findoneof("@%^*()",stringToSearch)#<br>
</cfoutput>

测试回返结果如下:

The quick brown fox jumped over the lazy dog.
#find("the",stringToSearch)#=33
#find("the",stringToSearch,35)#=0
#find("no such substring",stringToSearch)#=0

#findnocase("the",stringToSearch)#=1
#findnocase("the",stringToSearch,5)#=33
#findnocase("no such substring",stringToSearch)#=0

#findoneof("aeiou",stringToSearch)#=3
#findoneof("aeiou",stringToSearch,4)#=6
#findoneof("@%^*()",stringToSearch)#=0


compare:Compare(string1, string2),故名思义,是字符串对比。如果两面个字符串完全相同,则返回0。如果不同,则计算其ASCII值,进行比较。如果string1比string2小,则返回-1;反之则返回1。此函数是大小写敏感的。

replace:Replace(string, substring1, substring2 [, scope ]),字符串替换函数,将string中的substring1替换成substring2,这个用法和ASP中的replace一样。scope代表替换域,比如说all代表全部替换。

以上这些只是基本的字符串操作函数,功能再强一些的如refind,rereplace,refindnocase,rereplacenocase等,主要是用正则表达式RegExp来进行匹配操作的,以后再谈。

原创粉丝点击