1.JavaScript查找字符方法

  

     首先看一张 有关字符串函数的查找字符的方法图 接下里补充里面的方法说明

  

2.charAt()

      charAt() 方法返回字符串中指定位置的字符

 语法

str.charAt(index)  index: 0 到字符串长度 -1 的一个整数。

   字符串中的字符从左向右索引,第一个字符的索引值为 0,最后一个字符(假设该字符位于字符串 stringName 中)的索引值为 stringName.length - 1。 如果指定的 index 值超出了该范围,则返回一个空字符串。

   

3. charCodeAt()

   charCodeAt() 方法返回0到65535之间的整数,代表索引处字符的 UTF-16编码单元(在Unicode编码单元表示一个单一的UTF-16编码单元的情况下,UTF-16编码单元匹配Unicode编码单元。否则, 比如Unicode 编码单元 > 0x10000 的情况下,只能匹配Unicode代理对的第一个编码单元)。如果你希望得到整点编码值,使用codePointAt()

 语法

        str.charCodeAt(index)  index: 一个大于等于0 小于字符串长度的整数。如果不是一个数值 就默认为0;

     如果指定的index 小于0 或者大于字符串的长度 charCodeAt()返回NaN。

4. 查找位置的方法

  

A): indexOf() 方法返回指定值在字符串对象中首次出现的位置。从fromIndex位置开始查找 如果不存在 则返回-1。

  str.indexOf(searchValue[,fromIndex]);

  searchValue  一个字符串表示被查找的值。

  formIndex 可选 表示调用该方法的字符串中开始查找的位置 可以是任意整数 默认值是0。如果fromIndex < 0 则查找整个字符串(如同传进了0)

  如果 formIndex >= str.length 则该方法返回-1 。除非被查找的字符串是一个空字符串 此时返回str.length。

  indexOf区分大小写  

  'hello world'.indexOf('Hel'); //-1 返回-1

  可以用来检测是否存在某字符串 (当检测某个字符串是否存在于另一个字符串中 可使用下面的方法)。

  'hello world'.indexOf('hello') !== -1; //true

   'hello world'.indexOf('helol') !== -1; //false

使用indexOf 统计一个字符串中某个字母出现的次数。

  这是我自己封装的一个检测函数

  

4.lastIndexOf

     lastIndexOf() 方法返回指定值在调用该方法的字符串中最后出现的位置 如果没有找到则返回-1; 从该字符串的后面向前查找 从formIndex处开始

   lastIndexOf(serachValue [,formIndex])

searchValue
一个字符串,表示被查找的值。
fromIndex
从调用该方法字符串的此位置处开始查找。可以是任意整数。默认值为 str.length。如果为负值,则被看作 0。如果 fromIndex > str.length,则 fromIndex 被看作 str.length
同样的 可以使用lastIndexOf() 也可用来计算字符在字符串中出现的次数

5. 匹配方法 String.prototype.match()

    当字符串匹配到正则表达式(regular experssion) match()方法会提取

    

    

6. replace()

    replace() 方法使用一个替换值()替换掉一个匹配模式 在原字符串中某些或所有的匹配项 并返回替换后的新字符串 这个替换模式可以是一个字符串或一个RegExp

语法
    str.replace(regexp|substr,newSubStr|function)

参数

regexp (pattern)
一个 RegExp 对象。该正则所匹配的内容会被第二个参数的返回值替换掉。
substr (pattern)
一个要被 newSubStr 替换的字符串。
newSubStr (replacement)
 用于替换掉第一个参数在原字符串中的匹配部分的 String。该字符串中可以内插一些特殊的变量名。参考下面的使用字符串作为参数
function (replacement)
一个用来创建新子字符串的函数,该函数的返回值将替换掉第一个参数匹配到的结果。参考下面的指定一个函数作为参数

返回值

  一部分或全部匹配由替代模式所取代的新的字符串

  

7.split()

   Split() 通过把字符串分割成子字符串来把一个String 对象分割成一个字符串数组

     str.split([separator][,limit])

参数:

  separator

    指定用来分割字符串的字符 separator 可以是一个字符串或这则表达式 如果忽略separator 则返回这个字符串的数组形式 如果 separator 是一个空字符串,则 str 将会把原字符串中每个字符的数组形式返回。

  limit
一个整数,限定返回的分割片段数量。split 方法仍然分割每一个匹配的 separator,但是返回的数组只会截取最多 limit 个元素。

split 方法返回一个数组。

当找到一个 seperator 时,separator 会从字符串中被移除,返回存进一个数组当中的子字符串。如果忽略 separator 参数,则返回的数组包含一个元素,该元素是原字符串。如果 separator 是一个空字符串,则 str 将被转换为由字符串中字符组成的一个数组。

如果 separator 是一个正则表达式,且包含捕获括号(capturing parentheses),则每次匹配到 separator 时,捕获括号匹配的结果将会插入到返回的数组中。然而,不是所有浏览器都支持该特性。

Note: 当字符串为空时 split返回一个包含一个空字符串的数组 而不是一个空数组

JavaScript 字符串函数 之查找字符方法(一)的更多相关文章

  1. javascript 字符串进行 utf8 编码的方法(转)

    实践中碰到了一个大问题,在 javascript 中,可能有一些中文字符串,我们想将其进行二进制流编码的时候,需要将其转换为 utf8 的编码. 也就是说,输入的是一个字符串:'呆滞的慢板今天挣了10 ...

  2. [转]JavaScript字符串函数大全

    JS自带函数concat将两个或多个字符的文本组合起来,返回一个新的字符串.var a = "hello";var b = ",world";var c = a ...

  3. Oracle截取字符串函数和查找字符串函数,连接运算符||

    参考资料:Oracle截取字符串和查找字符串 oracle自定义函数学习和连接运算符(||) oracle 截取字符(substr),检索字符位置(instr) case when then else ...

  4. javascript字符串函数

    substring() 从字符串中提取一些字符 <script type="text/javascript"> var str="Hello world!&q ...

  5. JavaScript字符串、数组、对象方法总结

    字符串方法 示例字符串: const str = "hello,kitty,hello,vue "; 一.基本方法 charAt(n) 返回指定索引的字符 charCodeAt(n ...

  6. JavaScript所有函数和内置方法

    Number isFiniter() 检测传入的的数值是否在无穷大和无穷小之间(有限数字或者是可转换成有限数字)返回true,否则返回false.NaN返回false. isFinite(Number ...

  7. JavaScript字符串函数大全

    JS自带函数concat将两个或多个字符的文本组合起来,返回一个新的字符串.var a = "hello";var b = ",world";var c = a ...

  8. javascript 字符串函数

    字符串的截取 str.substring(0,index) 字符串转换为日期 <script> var s = "2017-04-10"; var d = s.repl ...

  9. javascript 字符串加密的几种方法

    8进制 /*8进制加密*/ function EnEight(){ var monyer = new Array();var i,s; for(i=0;i<txt.value.length;i+ ...

随机推荐

  1. alias

    1.语法:alias[别名]=[指令名称] [root@rusky /]# alias pingm="ping 127.0.0.1"  [root@rusky /]# pingmP ...

  2. ORA-02447: cannot defer a constraint that is not deferrable

    一个constraint如果被定义成deferrable那么这个constraints可以在deferred和imediate两种状态相互转换. deferred只在transaction中有效,也就 ...

  3. php+js 瀑布流源码

    官方网站:更多源码 新浪微博:QQ公众号 QQ:各种源码 602902342 大牛技术群: 452207697 下载地址:http://pan.baidu.com/s/1bnNipI3 密码: h93 ...

  4. java中IO递归写入

    package cn.stat.p1.file; import java.io.BufferedWriter; import java.io.File; import java.io.FileWrit ...

  5. jQuery自学笔记(四):jQuery DOM节点操作

    获得和设置内容:text( ).html( ) 以及 val( ) text( ) - 设置或返回所选元素的文本内容 html( ) - 设置或返回所选元素的内容(包括 HTML 标记) val( ) ...

  6. 现有有N个学生的数据记录,每个记录包括学号、姓名、三科成绩。 编写一个函数input,用来输入一个学生的数据记录。 编写一个函数print,打印一个学生的数据记录。 在主函数调用这两个函数,读取N条记录输入,再按要求输出。 N<100

    #include <iostream> using namespace std; struct student {char num[100];  char name[100];  int ...

  7. json_encode如何防止汉字转义成unicode

    众所周知,json_encode通常会把json中的汉字转义成unicode,但是这并不一定是我们想要的.有时候,我们需要获得汉字形式的json字符串,比如需要获得gbk编码的json字符串(只要把汉 ...

  8. Js收藏-转

    /** * <P> Title: JavaScript Util </P> * <P> Description: JavaScript 工具 </P> ...

  9. ECstore报表不显示解决

    最近研究ECSTORE发现后台报表显示空白,Google了一下发现N多统一的做法,直接往表里插几条数据.呵呵,更深入一点 1.要显示报表功能首先要确保已经配置好contab的定时任务,定时任务能够执行 ...

  10. Flask学习记录之Flask-WTF

    Flask-wtf时Wtforms库的flask框架扩展,能够方便的处理Web表单 一.定义一个web表单 使用flask-wtf时,每个web表单都由一个继承自flask.ext.wtf.Form的 ...