javascript match()函数匹配正则表达式时的返回值问题

前端开发:JS中exec()和match()的对比使用 exec()方法主要用来检索字符串中的正则表达式的匹配。注意:如果字符串中有匹配的值则返回该匹配值,否则返回null。参数描述string必需的参数。要匹配的字符串这里的示例以在字符串中全局搜索 "World" 和 "JS" ,具体代码如下所示: match() 方法主要是在字符串内检索指定的值,或者找到一个或多个正则表达式的匹配。注意:match() 方法将检索字符串 String Object,以便找到一个或多个与 regexp 匹配的文本内容,该方法的行为在很大程度上依赖于 regexp 阅读详情
语法
stringObject.match(regexp)

返回值
返回匹配结果的数组。该数组的内容依赖于 regexp 是否具有全局标志 g。

如果 regexp 没有标志 g,那么 match() 方法就只能在 stringObject 中执行一次匹配。如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。该数组的第 0 个元素存放的是匹配文本,而其余的元素存放的是与正则表达式的子表达式匹配的文本。除了这些常规的数组元素之外,返回的数组还含有两个对象属性。index 属性声明的是匹配文本的起始字符在 stringObject 中的位置,input 属性声明的是对 stringObject 的引用。


如果 regexp 具有标志 g,则 match() 方法将执行全局检索,找到 stringObject 中的所有匹配子字符串。若没有找到任何匹配的子串,则返回 null。如果找到了一个或多个匹配子串,则返回一个数组。不过全局匹配返回的数组的内容与前者大不相同,它的数组元素中存放的是 stringObject 中所有的匹配子串,而且也没有 index 属性或 input 属性。

例子:

<script type="text/javascript">var str="1 plus 2 equal 3"document.write(str.match(/\d+/g))</script>

输出:

1,2,3 

Match Example

var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var regexp = /[A-E]/gi;(i 指不区分大小写)

var rs = str.match(regexp);

//rs= Array('A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e');

相关信息:

http://www.w3school.com.cn/jsref/jsref_match.asp

1、VMware vSphere 全面指南:从入门到精通 本文全面介绍了VMware vSphere从入门到精通的完整知识体系,涵盖基础概念、环境适配、部署规划、安装配置、网络与存储准备、虚拟机创建与管理、资源组织、事件监控、巡检流程、主机配置文件管理、资源池优化、高可用性与容错应用,以及故障排除方法。结合实用工具和部署技巧,帮助读者系统掌握vSphere的核心功能与运维实践,提升虚拟化环境的稳定性与管理效率。 阅读详情

相关推荐

数据仓库实践:从ITR流程讲指标体系建设

从 ITR 流程或者其他客服反馈流程的考核过程可见,实际工作中不可能只通过单个指标评价一个业务过程,需要从多个维度梳理业务,并把多个高度相关的指标组织起来,以避免只考虑其中某个指标从而摧毁整个业务过程的结果,指标体系=指标+体系。

the_singing_towers的博客 2265

js正则中的match()

我们把这个现象理解为,只要使用了全局匹配模式,那么match()将只返回“贪婪”的匹配结果,这里的“贪婪”指的就是只招那个最长的能匹配上的字符串,至于分组项,就忽略了。再强调一次,这个例子的结果是没有使用全局匹配的正则表达式的匹配结果。第4项:length,表示匹配到的结果个数,由于这里不使用全局匹配,只找到首次匹配项就结束了,所以匹配结果只有1个,length也就是1。结果说明了一切,当正则中使用全局匹配符g,即使有分组的存在,在匹配结果中也只有匹配到的最长的,那些分组的子匹配都不见了。

song854601134的博客 1万+

Mind+掌控板实战:5分钟搞定Easy IoT的MQTT通讯(附完整代码)

本文详细介绍了如何利用掌控板和Mind+图形化编程软件,快速实现基于Easy IoT平台的MQTT通讯。通过清晰的步骤讲解和完整的代码示例,指导用户完成从云端配置、Wi-Fi连接到MQTT消息发布与订阅的全过程,帮助初学者轻松构建物联网设备间的双向对话系统。

weixin_29300241的博客 445

c++语言中static关键字用法详解:(1)static修饰普通的变量和函数(2)static修饰类的成员变量和成员方法

参考:https://www.cnblogs.com/love-yh/p/7507630.html https://blog.youkuaiyun.com/guotianqing/article/details/79828100 static全局变量、static局部变量、static函数 问题一:static全局变量与普通的全局变量有什么区别? 问题二:static局部变量和普通局部变量有什么区别? 问题三...

博雅勇士的博客 1613

高数 | 【极限与等价无穷小】两个重要极限 & 经典错误 & 什么情况下求极限可以直接带入

一. 第一个重要极限 二. 第二个重要极限 三. 导数定义式 全文见【高等数学】两个重要的极限 - 知乎

"You are worthy! You can do it!" 6万+

【文献笔记】ICCV 2021 | Point Transformer

作者提到,特别适合点云处理,因为自注意力机制是的核心,本质上就是一个集合算子:它对输入元素具有顺序不变性和数量不变性3D点云是无序的,即使改变点云txt文件中的点顺序也不会有任何影响。自注意力机制天然具有排列不变性,因为它通过对所有"点对"的关系进行建模来处理输入,而不依赖于任何特定的输入顺序点云数据通常覆盖了3D空间中的对象或场景,理解这些数据需要捕捉点与点之间复杂的空间关系。自注意力机制能够有效的捕捉这些关系,因为它为每个"点对"赋予一个。

m0_55908255的博客 965

元素浮动,其后的元素的 margin-top会被压制

解决办法:用padding-top:2em;clear:both代替margin-top

junboyboy的专栏 692

【深度学习新浪潮】OpenClaw跟机器人行业有哪些很好的研究结合点?

OpenClaw正通过"AI大脑+机器人肢体"的深度融合,重新定义机器人与人类的交互方式和自主操作能力。近期ROSClaw框架发布、人形机器人集成和空间计算试验等进展,标志着OpenClaw已从概念验证阶段进入实际应用落地期,为机器人行业带来了自然语言控制普及化具身智能平民化和跨平台开发标准化三大变革机遇。

专注:太空算力、AI infra、异构调度、大模型成本工程 228

.net 密码框赋值、输入以及页面刷新状态下的处理过程

在最近基于ASP.NET的项目中,遇到密码框在输入密码时的一些问题,下面将这些问题总结一下,供大家参考学习: 一、输入状态为密码模式     这个相对简单,只需要将TextBox属性中的TextMode属性设置为Password即可。 二、赋值状态为密码模式     在一般情况下,你会发现,你将TextBox的TextMode属性设置为Password后,在后台给密码框传值

junboyboy的专栏 1896

LPDDR6 tdbR2dbR_L cross row技术探讨

LPDDR6 tdbR2dbR_L cross row技术探讨

zilan23的博客 47

AI测试:手把手教你用AI做Web自动化测试「喂饭教程」

本文介绍了基于MCP协议和使用 mcp-use + playwright-mcp 构建智能Web自动化测试框架的实践方法。通过整合大语言模型的理解能力与测试工具可靠性,该方案支持用自然语言描述测试流程,自动转换为可执行的测试步骤,提升测试效率,支持复杂场景和多步骤流程,为自动化测试提供了新思路。

blues_C的博客 1279

详解正则表达式匹配方法 match()

返回的数组包含多个元素,第一个元素是以贪婪模式找到的最长的匹配,之后的元素依次为该匹配中的第一、第二、第三 ......个分组,这里只有1个分组,所以也就只匹配到1个分组结果,也就是”th"。我们把这个现象理解为,只要使用了全局匹配模式,那么match()将只返回“贪婪”的匹配结果,这里的“贪婪”指的就是只招那个最长的能匹配上的字符串,至于分组项,就忽略了。结果说明了一切,当正则中使用全局匹配符g,即使有分组的存在,在匹配结果中也只有匹配到的最长的,那些分组的子匹配都不见了。

weixin_61891798的博客 7791

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

java 正则表达式match_详解正则表达式匹配方法 match()

在前端开发中,正则表达式是一大利器。所以我们这次就来讨论下match()方法。match本身是JavaScript语言中字符串对象的一个方法,该方法的签名是match([string] | [RegExp])它的参数既可以是一个字符串,也可以是一个正则表达式。该方法绝大多数都是要使用正则表达式的,所以参数为string的情况不在本文讨论范围之内。其实参数即使是一个简单的string,其返回值也跟使...

weixin_39805180的博客 4112

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

JS match()的学习

0x00 match() 没有时间系统学习JS,就只能在练靶场的时候针对性的慢慢积累了,年龄大了。。。 JS中的match()有两种用法 stringObject.match(searchvalue) stringObject.match(regexp) 如果是第一种,就直接在里面接字符串,如果是第二种,就必须接正则。 返回值 存放匹配结果的数组。该数组的内容依赖于 regexp 是否具有全局标...

baynk的博客 4042

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

js match()和test()

JavaScript match() 方法 JavaScript String 对象 定义和用法 match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。 该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。 语法 stringObject.match(searchvalue) stringObject.match(regexp) 参数 描述 searchvalue 必需。规定要检索的字符串值。

叶落无痕的博客 4844

正则匹配字符串无匹配不到_Day233:正则表达式匹配方法 match()

match()语法match本身是JavaScript语言中字符串对象的一个方法,该方法的签名是  match([string] | [RegExp])  它的参数既可以是一个字符串,也可以是一个正则表达式。该方法绝大多数都是要使用正则表达式的,所以参数为string的情况不在本文讨论范围之内。其实参数即使是一个简单的string,其返回值也跟使用正则表达式的结果无异,而且使用正则表达式的变化比较...

weixin_39924179的博客 1062

hive jso匹配_JavaScript match()方法和正则表达式match()

先介绍参数为普通字符串的使用方式,此时match方法的返回值是存放首次匹配内容的数组。如果没有找到匹配结果,返回null。语法结构:1 str.match(searchvalue)参数解析:(1).searchvalue:必需,规定方法要检索的字符串。代码实例:let str="antzone";console.log(str.match("n"));代码运行效果:["n", index: 1, ...

weixin_39960147的博客 307

js中match函数用法

来自: http://blog.youkuaiyun.com/superxhx/article/details/6505965 javascript中的match函数是使用正则表达式对字符串进行查找,并将查找的结果作为数组返回,在实际开发中非常的有用,使用方法如下: stringObj.match(rgExp) 其中stringObj是必选项。对其进行查找的 String 对象或字符串文字。

码农 5729

无涯教程-Javascript - match()函数

此方法用于在将字符串与正则表达式进行匹配时检索匹配项。

无涯教程 486

JavaScript match()方法使用

1、JavaScript match() 方法说明 http://www.w3school.com.cn/jsref/jsref_match.asp 写法: stringObject.match(searchvalue) stringObject.match(regexp) 返回值:存放匹配结果的数组。   2、match方法正则表达式参数用法 2.1 正则表达式无全局标志

zhuzhu81的博客 5577

JavaScript中String的match方法详解

String.prototype.match() ** String.prototype.match()方法返回通过一个正则表达式匹配到的字符串结果。** var paragraph = 'The quick brown fox jumps over the lazy dog. It barked.'; var regex = /[A-Z]/g; var found = paragraph.mat...

大菜鸟的博客 1万+

js中test()和match()正则函数

作用:用于检测一个字符串是否匹配某个模式 match()方法 match是String的方法,参数是正则表达式,返回值是数组,没有找到时返回的是null。 stringObj.match(regExp) stringObj是必选项,对其进行查找的string对象或字符串文字; regExp是必选项,为包含正则表达式模式和可用标志的正则表达式对象。 使用方法: var reg = /^([0-9]{1,4}).*\D$/g; var str1 = 'aa';

不会飞的船 1528

JavaScript中match函数

来自:http://www.ijavascript.cn/shouce/javascript-match-262.html JavaScript中match函数方法是使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回。使用方法: stringObj.match(rgExp) 其中stringObj是必选项。对其进行查找的 String 对象或字符串文字。 rgExp是必

码农 1189

JavaScript match()方法和正则表达式match()

先介绍参数为普通字符串的使用方式,此时match方法的返回值是存放首次匹配内容的数组。如果没有找到匹配结果,返回null。语法结构: 1 str.match(searchvalue)参数解析:(1).searchvalue:必需,规定方法要检索的字符串。代码实例:let str="antzone";console.log(str.match("n"));代码运行效果:["n", index:...

weixin_34097242的博客 395
上一篇: 正则表达式30分钟入门教程
下一篇: javascript中showModalDialog和showModelessDialog的使用
junboyboy
博客等级 码龄15年 12粉丝 14原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值