博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ES5-String-match/search/replace/split
阅读量:5826 次
发布时间:2019-06-18

本文共 1361 字,大约阅读时间需要 4 分钟。

match方法用于确定原字符串是否存在某个子字符串,返回一个数组,成员为匹配的第一个字符串。如果没有找到匹配,则返回null

'cat, bat, sat, fat'.match('at') // ["at"]'cat, bat, sat, fat'.match('xt') // null->indexOf也有类似功能'cat, bat, sat, fat'.indexOf('xt')// -1复制代码

返回的数组还有index属性和input属性,分别表示匹配字符串开始的位置和原始字符串。

var matches = 'cat, bat, sat, fat'.match('at');matches.index // 1matches.input // "cat, bat, sat, fat"复制代码

search方法的用法基本等同于match,但是返回值为匹配的第一个位置。如果没有找到匹配,则返回-1

'cat, bat, sat, fat'.search('at') // 1复制代码
  • 注意:search方法还可以使用正则表达式作为参数,但indexOf不能。

replace方法用于替换匹配的子字符串,一般情况下只替换第一个匹配(除非使用带有g修饰符的正则表达式)。

stringObject.replace(regexp/substr,replacement)复制代码
'aaa'.replace('a', 'b') // "baa"'aaa'.replace(/a/g, 'b') // "bbb"复制代码

split方法按照给定规则分割字符串,返回一个由分割出来的子字符串组成的数组

'a|b|c'.split('|') // ["a", "b", "c"]复制代码

如果分割规则为空字符串,则返回数组的成员是原字符串的每一个字符。

'a|b|c'.split('') // ["a", "|", "b", "|", "c"]复制代码

如果省略参数,则返回数组的唯一成员就是原字符串。

'a|b|c'.split() // ["a|b|c"]复制代码

如果满足分割规则的两个部分紧邻着(即两个分割符中间没有其他字符),则返回数组之中会有一个空字符串。

'a||c'.split('|') // ['a', '', 'c']复制代码

如果满足分割规则的部分处于字符串的开头或结尾(即它的前面或后面没有其他字符),则返回数组的第一个或最后一个成员是一个空字符串。

'|b|c'.split('|') // ["", "b", "c"]'a|b|'.split('|') // ["a", "b", ""]复制代码

split方法还可以接受第二个参数,限定返回数组的最大成员数

'a|b|c'.split('|', 0) // []'a|b|c'.split('|', 1) // ["a"]'a|b|c'.split('|', 2) // ["a", "b"]'a|b|c'.split('|', 3) // ["a", "b", "c"]'a|b|c'.split('|', 4) // ["a", "b", "c"]复制代码

上面代码中,split方法的第二个参数,决定了返回数组的成员数。

转载地址:http://wopdx.baihongyu.com/

你可能感兴趣的文章
opennebula 开发记录
查看>>
ubuntu 修改hostname
查看>>
sql 内联,左联,右联,全联
查看>>
C++关于字符串的处理
查看>>
6、Web Service-拦截器
查看>>
Flask 源码流程,上下文管理
查看>>
stream classdesc serialVersionUID = -7218828885279815404, local class serialVersionUID = 1.
查看>>
ZAB与Paxos算法的联系与区别
查看>>
Breaking parallel loops in .NET C# using the Stop method z
查看>>
修改故障转移群集心跳时间
查看>>
[轉]redis;mongodb;memcache三者的性能比較
查看>>
微软职位内部推荐-Sr DEV
查看>>
让你的WPF程序在Win7下呈现Win8风格主题
查看>>
JDBC二查询(web基础学习笔记八)
查看>>
802.11 学习笔记
查看>>
Leetcode-Database-176-Second Highest Salary-Easy(转)
查看>>
构建Docker Compose服务堆栈
查看>>
最小角回归 LARS算法包的用法以及模型参数的选择(R语言 )
查看>>
Hadoop生态圈-Kafka常用命令总结
查看>>
如何基于Redis Replication设计并实现Redis-replicator?
查看>>