博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript的正则表达式
阅读量:7251 次
发布时间:2019-06-29

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

   JavaScript的正则表达式

1   正则表达式对象的方法

   test用于测试字符串参数中是否存在匹配正则表达式模式的字符串,如果存在返回true,不存在返回false

   exec使用正则表达式模式对字符串执行搜索,并将更新全局RegExp对象的属性以反映匹配结果

2   如果没有匹配的文本则返回null,否则返回一个结果数组

   index声明匹配文本的第一个字符的位置

   input存放被检索的字符串string

3   exec的非全局表达式

   调用非全局的RegExp对象的exec()时,返回数组

   第一个元素是与正则表达式相匹配的文本

   第二个元素是与RegExpObject的第一个子表达式相匹配的文本(如果有的话)

   第三个元素是与RegExp对象的第二个子表达式相匹配的文本(如果有的话),以此类推

4   对象属性

   global:是否全文搜索,默认false

   ignore case:是否大小写敏感,默认是false

   multiline:多行搜索,默认值是false

   lastIndex:是当前表达式匹配内容的最后一个字符的下一个位置

  source:正则表达式的文本字符串

5   字符串对象的方法

   search()方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串方法返回第一个匹配结果index,查找不到返回-1

   search()方法不执行全局匹配,它将忽略标志g,并且总是从字符串的开始进行检索

   match()方法将检索字符串,以找到一个或多个与regexp匹配的文本

   regexp是否具有标志g对结果影响很大

6   regexp的非全局调用

   如果regexp没有标志g,那么match()方法就只能在字符串中执行一次匹配

   如果没有找打匹配的文本,将返回null

   否则它将返回一个数组,其中存放了它找到的匹配文本有关的信息

   返回数组的第一个元素存放的是匹配文本,而其余的元素存放的是与正则表达式的子表达式匹配的文本

7   除了常规的数组元素之外,将返回的数组还含有2个对象属性

   index声明匹配文本的起始字符在字符串的位置

   input声明对stringObject的引用

8   regexp的全局调用

   如果regexp具有标志g,则match()方法将执行全局检索,找到字符串中的所有匹配的子字符串

   没有找到任何匹配的子串,则返回null

   如果找到一个或多个匹配子串,则返回一个数组

   数组元素中存放的是字符串中所有的匹配子串,而且也没有index属性或input属性

   split把字符串分割为字符数组,在一些复杂的情况下可以使用正则表达式解决

9   function参数的含义

9.1   function会在每次匹配替换的时候调用,有四个参数

   匹配字符串

   正则表达式分组内容,没有分组则没有该参数

   匹配项在字符串中的index

   原字符串

10   replace的用法

   String.prototype.replace(str,replaceStr)

   String.prototype.replace(reg,replaceStr)

   String.prototype.replace(reg,function)

本文转自 拉考的考拉 51CTO博客,原文链接:http://blog.51cto.com/lakaodekaola/1943735

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

你可能感兴趣的文章
ELF文件解析(一):Segment和Section
查看>>
一个由于Function.name造成的兼容性bug
查看>>
比特币钱包隔离认证开发指南
查看>>
《从0到1学习Flink》—— Data Sink 介绍
查看>>
Vue.js 渲染简写样式存在的问题
查看>>
cocos2d-x (js-binding)游戏开发解决方案设计稿
查看>>
改善Python程序的91个建议
查看>>
简单说说 angular.json 文件
查看>>
js-数据运算
查看>>
解决阿里云ECS运行前后台分离项目调用QQ互联导致: redirect uri is illegal(100010)问题...
查看>>
Slog48_项目上线之域名的备案
查看>>
[ 一起学React系列 -- 1 ] 信笔说JSX
查看>>
homebrew报错问题解决
查看>>
肉眼看到的相同两个字串的不同
查看>>
ng-zorror@~0.6升级@^1在开发中有哪些差异
查看>>
微信小程序 request请求封装
查看>>
Git 学习
查看>>
ES6深入浅出 模块系统
查看>>
一道js闭包面试题的学习
查看>>
微信小程序(新)必备知识
查看>>