功能:使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回

函数格式:stringObj.match(rgExp) stringObj为字符串必选 rgExp为正则表达式必选项

返回值:如果能匹配则返回结果数组,如果不能匹配返回null

使用方法: 
stringObj.match(rgExp) 
其中stringObj是必选项。对其进行查找的 String 对象或字符串文字。 
rgExp是必选项。为包含正则表达式模式和可用标志的正则表达式对象。也可以是包含正则表达式模式和可用标志的变量名或字符串文字。 
如果js中match函数方法没有找到匹配,返回 null。如果找到匹配返回一个数组并且更新全局 RegExp 对象的属性以反映匹配结果。JavaScript中match函数方法返回的数组有三个属性:input、index和lastIndex。Input 属性包含整个的被查找字符串。Index 属性包含了在整个被查找字符串中匹配的子字符串的位置。LastIndex 属性包含了最后一次匹配中最后一个字符的下一个位置。如果没有设置全局标志 (g),数组的0元素包含整个匹配,而第 1 到 n 元素包含了匹配中曾出现过的任一个子匹配。这相当于没有设置全局标志的 exec 方法。如果设置了全局标志,元素0到n中包含所有匹配。

下面的示例演示了js中match函数方法的用法:

function MatchDemo(){
var r, re; // 声明变量。
var s = "The rain in Spain falls mainly in the plain";
re = /ain/i; // 创建正则表达式模式。
r = s.match(re); // 尝试匹配搜索字符串。
return(r); // 返回第一次出现 "ain" 的地方。
} 

本示例说明带 g 标志设置的js中match函数方法的用法

function MatchDemo(){
var r, re; // 声明变量。
var s = "The rain in Spain falls mainly in the plain";
re = /ain/ig; // 创建正则表达式模式。
r = s.match(re); // 尝试去匹配搜索字符串。
return(r); // 返回的数组包含了所有 "ain"
// 出现的四个匹配。
} 

下面几行代码演示了字符串文字的js中match函数方法的用法。 
var r, re = "Spain"; 
r = "The rain in Spain".replace(re, "Canada");

match()方法用于从字符串中查找指定的值,本方法类似于indexOf()和lastindexOf(),不同的是它返回的是指定的值,而 不是指定值在字符串中的位置。indexOf()和lastindexOf()方法返回位置数字 如果找不到返回-1。注意区分大小写

<script type="text/javascript">
var str="Hello world!"
document.write(str.match("world") + "")
document.write(str.match("World") + "")
document.write(str.match("worlld") + "")
document.write(str.match("world!"))
</script>

输出结果为

worldnullnullworld!    第一个和第四个能匹配到,返回匹配的值,第二个大小写不匹配,第三个多了个l,返回null

原网址:https://www.cnblogs.com/jingaier/p/6709653.html

js正则标志/g,/i,/m说明和实例

一,js正则标志/g,/i,/m说明

1,/g 表示该表达式将用来在输入字符串中查找所有可能的匹配,返回的结果可以是多个。如果不加/g最多只会匹配一个

2,/i  表示匹配的时候不区分大小写

3,/m 表示多行匹配,什么是多行匹配呢?就是匹配换行符两端的潜在匹配。影响正则中的^$符号

二,实例说明

1,/g的用法

<script type="text/javascript">  str = "tankZHang (231144)"+  "tank ying (155445)";  res = str.match(/tank/);    //没有加/g  alert(res);                 //显示一个tank  res = str.match(/tank/g);   //加了/g  alert(res);                 //显示为tank,tank
</script>

2,/i的用法

<script type="text/javascript">str = "tankZHang (231144)" +"tank ying (155445)";res = str.match(/zhang/);alert(res);                  //显示为null  res = str.match(/zhang/i);   //加了/i  alert(res);                  //显示为ZHang
</script>

3,/m的用法

<script type="text/javascript">var p = /$/mg;var s = '1\n2\n3\n4\n5\n6';alert(p.test(s));  //显示为true  alert(RegExp.rightContext.replace(/\x0A/g, '\\a'));  //显示\a2\a3\a4\a5\a6  alert(RegExp.leftContext);    //显示为竖的2345  alert(RegExp.rightContext);   //显示为6  var p = /$/g;var s = '1\n2\n3\n4\n5\n6';alert(p.test(s));  //显示为true  alert(RegExp.rightContext.replace(/\x0A/g, '\\a'));  //什么都不显示  alert(RegExp.leftContext);    //显示为竖的123456  alert(RegExp.rightContext);   //什么都不显示  var p = /^/mg;var s = '1\n2\n3\n4\n5\n6';alert(p.test(s));    //显示为true  alert(RegExp.rightContext.replace(/\x0A/g, '\\a')); //显示为1\a2\a3\a4\a5\a6  alert(RegExp.leftContext);     //显示为竖的12345  alert(RegExp.rightContext);    //显示为6
</script>   
//从上例中可以看出/m影响的^$的分割方式
上面说的三个例子,/i,/g,/m分开来说的,可以排列组合使用的。个人觉得/m没有多大用处  

原网址:https://www.cnblogs.com/william-lin/p/3480231.html

js正则表达式之match函数相关推荐

  1. js正则表达式的匹配函数返回数组问题

    初衷是想使用js的match函数配合正则表达式来匹配正确的ip格式,出现问题 var reg = /^([1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(([0-9]|[ ...

  2. js 正则表达式奇偶字符串替换_Python中的正则表达式及其常用匹配函数用法简介...

    今 日 鸡 汤 此曲只应天上有,人间难得几回闻. /1 前言/ 这次给大家主要是介绍Python中的正则表达式,及其相关函数的基本使用方法,并且捎带一些正则表达式给我们带来的便利. /2 简介/ Py ...

  3. 28Python正则表达式、正则表达式对象、正则表达式修饰符、表达式模板、表达式实例、match函数、search方法、检索和替换、repl、compile、findall等

    28Python正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. ...

  4. java match正则不生效_[Java教程]正则表达式match()函数

    [Java教程]正则表达式match()函数 0 2015-09-26 12:00:31 正则表达式match()函数: 此方法可在字符串内查找一个或多个正则表达式的匹配. 返回值是一个数组,但是此数 ...

  5. 第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer

    一. 概述 re模块的函数search.match.fullmatch.findall.finditer都是用于搜索文本中是否包含指定模式的串,函数的参数都是一样的,第一个参数是模式串.第二个是搜索文 ...

  6. js match函数注意

    match函数 String.prototype.match 参数 regexp 返回 返回包含所有匹配的数组,如果匹配失败返回Null.数组第一项是整段字符串的匹配,第二项至以后都是捕获匹配. 注意 ...

  7. JS正则表达式的基础用法

    RegExp(正则表达式)对象 正则表达式是一个描述字符模式的对象,可以处理更复杂的字符串.进行匹配替换. 常用的修饰符: i/m/g 使用方法: [声明方法一: new RegExp(value)] ...

  8. JS正则表达式大全(整理详细且实用)

    JS正则表达式大全(整理详细且实用) 作者: 字体:[增加 减小] 类型:转载 时间:2013-11-14 我要评论 JS正则表达式大全(整理详细且实用).需要的朋友可以过来参考下,希望对大家有所帮助 ...

  9. js 字符串替换_正则精要:玩转JS正则表达式,也许只需这一篇(建议收藏)

    0.导引 在正文开始前,先说说正则表达式是什么,为什么要用正则表达式?正则表达式在我个人看来就是一个程序可以识别的规则,有了这个规则,程序就可以帮我们判断某些字符是否符合我们的要求.但是,我们为什么要 ...

  10. JS正则表达式常见用法实例详解

    这篇文章主要介绍了JS正则表达式常见用法,结合实例形式分析了javascript元字符.分组符.修饰符.量词基本含义,并结合具体案例形式分析了javascript正则基本使用技巧,需要的朋友可以参考下 ...

最新文章

  1. 服务器php环境一键配置,phpstudy一键配置服务器环境教程
  2. 20172301 《程序设计与数据结构》第七周学习总结
  3. redis cli 删除key 模糊_不同操作系统下,Redis的使用命令
  4. 常用加解密工具集合|视频图片加解密方案
  5. 疑问:当流量被封禁之后(论资本之力):防流量被恶意盗挖(抛砖篇)
  6. SIP中第三方呼叫控制(3PCC)建立流程
  7. opencv︱图像的色彩空間cvtColor(HSV、HSL、HSB )及相关色彩学
  8. 机器学习基础:朴素贝叶斯(Machine Learning Fundamentals: Naive Bayes)
  9. Flask--模板渲染和参数传递
  10. iOS---UIScrollView实现相册循环
  11. 腾讯这几年成果还真不少!抢了不少群众资源。。。
  12. 《HBase权威指南》读书笔记3
  13. 双向循环链表讲解及实现
  14. Excel粘贴时如何跳过隐藏单元格
  15. 涨知识:当前主流服务器操作系统的三大流派!
  16. 两个程序员老友的会面
  17. 自己的网页嵌入外部邮箱登陆
  18. vue-create 报错 command failed: yarn --registry=htt (完美解决方案)
  19. linux编写学生选课系统
  20. 华为鸿蒙系统学习笔记6-方舟编译器深度解析

热门文章

  1. C#获取本地IP地址
  2. 干货丨1.3万字简述,PRD到底怎么写
  3. 了解计算机软件系统教学设计,认识计算机》教学设计
  4. CENTOS 7 完全硬盘安装及使用 1
  5. Linux可以打开cdr文件吗,CDR是什么格式
  6. Java 中Calendar的使用
  7. 35美元的OpenWrt SBC目标板在教育方面应用
  8. AndroidStudio下建立libs、raw、、assets、selector、shape、anim、存放so
  9. 等差数列和等比数列公式
  10. 用户态与内核态之间的切换