Qt中indexOf()和lastIndexOf()查找字符串位置

摘要:
2011年10月5日发布了第一页JavaScript indexOf()和lastIndexOf(()搜索字符串locationindexOf)和lastIndex Of(搜索字符串位置。Admin有两种方法从字符串中查找子字符串:indexOf()和lastIndexOf(()。如果“o”在此字符串中只出现一次,indexOf()和lastIndexOf(()将返回相同的位置值。换句话说,indexOf()将从参数指定的位置向后搜索,忽略该位置之前的所有字符;而lastIndexOf()将从指定位置向前搜索,忽略该位置之后的所有字符。请参见以下示例:varstringValue=“helloworld”;警报;//7alert//4在将第二个参数6传递给这两个方法之后,我们得到了与上一个示例相反的结果。
 
 
首页 » JavaScript » indexOf()和lastIndexOf()查找字符串位置 indexOf()和lastIndexOf()查找字符串位置 发表于 2011-10-05 由 admin
 
有两个可以从字符串中查找子字符串的方法:indexOf()和lastIndexOf()。这两个方法都是从一个字符串中搜索给定的字符串,然后返回子字符串的位置(如果没有子字符串的位置,则返回-1)。这两种的方法的区别在于:indexOf()方法从字符串的开头向后搜索字符串,而lastIndexOf()方法是从字符串的末尾向前搜索子字符串。
var stringValue = "hello world" ; alert ( stringValue . indexOf ( "o" )); //4 alert ( stringValue . lastIndexOf ( "o" )); //7
 
子字符串“o”第一次出现的位置是4,即“hello”中的“o”;最后一次出现的位置是7,即“world”中的“o”。如果“o”在这个字符串中只出现了一次,那么indexOf()和lastIndexOf()会返回相同的位置值。
 
这两种方法都可以接受可选的第二个参数,表示从字符串中的哪个位置开始搜索。换句话说,indexOf()会从该参数指定的位置向后搜索,忽略该位置之前的所有字符;而lastIndexOf()则会从指定的位置向前搜索,忽略该位置之后的所有字符。看下面的例子:
var stringValue = "hello world" ; alert ( stringValue . indexOf ( "o" , 6 )); //7 alert ( stringValue . lastIndexOf ( "o" , 6 )) //4
 
在将第二个参数6传递给这两个方法之后,得到了与前面例子相反的结果。这一次,由于indexOf()是从位置6(字母“w”)开始向后搜索,结果在位置7找到了“o”,因此它返回7。而lastIndexOf()是从6开始向前搜索,结果找到了“hello”中的“o”,因此它返回4。在使用第二个参数的情况下,可以通过循环调用indexOf()或lastIndexOf()来找到所有匹配的子字符串,如下面的例子所示:
var stringValue = "Lorem ipsum dolor sit amet, consectetur adipisicing elit" ; var positions = new Array (); var pos = stringValue . indexOf ( "e" ); while ( pos > - 1 ) {     positions . push ( pos );     pos = stringValue . indexOf ( "e" , pos + 1 ); } alert ( positions ); //"3,24,32,35,52"
 
这个例子不断增加indexOf()方法开始查找的位置,遍历了一个长字符串。在循环之外,首先找到了“e”在字符串中的初始位置;而进入循环后,则每次都给indexOf()传递上一次的位置加1。这样,就确保了每次新搜索都从上一次找到字符串的后面开始。每次搜索返回的位置一次被保存在数组positions中,以便将来使用。
 
 
Related posts:
String 类型
charAt()和charCodeAt()获取字符串特定字符
concat()、slice()、substr()和substring()
JavaScript push()和pop()方法
JavaScript shift()和unshift()方法
此文章发表在 JavaScript 标签为 引用类型 . 将 固定链接 加入收藏.
 
阅读最多 更多>>
navigator.onLine 离线检测
localeCompare()方法
HTML5中用canvas绘制径向渐变
跨浏览器确定窗口大小
cookie的成分
JavaScript插入动态脚本
clientX与clientY确定客户区…
JavaScript惰性载入函数
HTTP头部信息


来自为知笔记(Wiz)


免责声明:文章转载自《Qt中indexOf()和lastIndexOf()查找字符串位置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇linux4.1.4上移植ME909s-821,MU609 4G模块驱动详谈字符编码[二]代码页和一个乱码案例下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

iOS开发 字符串

iOS开发之玩转字符串 (转)这是另一个收藏的超链接 来自SegmentFault 大神的精品 下面这是一些常用的方法和属性 记得不牢所以收藏下 //一、NSString /*----------------创建字符串的方法----------------*///1、创建常量字符串。NSString *astring = @"This is a Strin...

初见Python<2>:列表和元组

  1、在python中,最基本的数据结构是序列,序列中每一个元素被分配一个序号,即元素的位置,称为索引。索引从0开始,-1表示倒数第一个元素,-2表示倒数第二个元素,因此既可以是从前到后开始对元素进行访问,也可以从后往前对元素进行访问。 2、python序列中有6种内建的序列:列表、元组、字符串、Unicode字符串、buffer对象,xrange对象。...

JSP页面之${fn:}内置函数

函数列表: 函数名 函数说明 使用举例 fn:contains 判断字符串是否包含另外一个字符串 <c:if test="${fn:contains(name, searchString)}"> fn:containsIgnoreCase 判断字符串是否包含另外一个字符串(大小写无关) <c:if test="${fn:con...

mysql日期 武胜

CURDATE() 返回当前日期如1970-01-01 CURTIME() 返回当前时间如00:00:00 NOW() 返回当前日期时间如1970-01-01 00:00:00 DATE(合法日期时间) 获取日期如1970-01-01 EXTRACT(单位 FROM 合法日期时间) 将日期转为指定单位 select EXTRACT(YEAR FROM `...

PCRE函数简介和使用示例

PCRE是一个NFA正则引擎,不然不能提供完全与Perl一致的正则语法功能。但它同时也实现了DFA,只是满足数学意义上的正则。 PCRE提供了19个接口函数,为了简单介绍,使用PCRE内带的测试程序(pcretest.c)示例用法。 pcre_compile原型:#include <pcre.h>pcre *pcre_compile(cons...

[转]使用 LDAP 组或角色限制访问,包含部分单点登录SSO说明

参考:http://www-01.ibm.com/support/knowledgecenter/api/content/SSEP7J_10.2.2/com.ibm.swg.ba.cognos.crn_arch.10.2.2.doc/c_restrict_access_using_ldap_groups_or_roles.html#Restrict_Acc...