js正则贪婪模式_js 正则表达式问题 贪婪与非贪婪
展开全部
1)为什么只得到一32313133353236313431303231363533e58685e5aeb931333363396364个结果?
因为模式/(aa)+?/g可以匹配aa,aaa,aaaa...,因为输入串只有3个a,而正则表达式引擎的搜索模式是由左往右搜索,若匹配到一次后,下次将紧接上一次成功匹配后的下一个位置起,因为上一次成功的位置第2个a,所以第二次匹配时,将从第3个a开始,由于只有一个a,所以不满足子表达(aa)。所以只得到一个结果。
2)为什么没有输出["aa","aa"]这样的结果呢?
原因:见上。
3)如何才能得到["aa","aa"]这样的结果呢?请写出代码?
如上分析,可以再加一个a。即var str = 'aaaa';
var reg = /(aa)+?/g;
var results = str.match(reg);
for (var x in results) alert('index='+x+',value='+results[x]);
如果想体现贪婪与非贪婪效果,可以这样做:// 贪婪模式
var str = 'aaaa';
var reg = /a+/g;
var results = str.match(reg);
// 返回1个搜索结果,结果为所有的a
for (var x in results) alert('index='+x+',value='+results[x]);// 非贪婪模式
var str = 'aaaa';
var reg = /a+?/g;
var results = str.match(reg);
// 返回4个搜索结果,每个结果均为a
for (var x in results) alert('index='+x+',value='+results[x]);
js正则贪婪模式_js 正则表达式问题 贪婪与非贪婪相关推荐
- js正则贪婪模式_js 正则表达式 贪婪与惰性
首先引入一个介绍比较详细的网站 http://www.jb51.net/article/31491.htm 接下来是本人的简介 其实贪婪和惰性很容易理解,从字面意思我们就可以知道,所谓的"贪 ...
- js 正则匹配邮箱_JS正则表达式验证手机号和邮箱
一.验证手机号 functionisPoneAvailable(poneInput) {var myreg=/^[1][3,4,5,7,8][0-9]{9}$/;if (!myreg.test(pon ...
- js正则贪婪模式_JS关于正则的非贪婪模式
首先正则是很复杂,很巧妙的. 你举的这个例子说明贪婪模式和非贪婪模式是不对的. 啥是贪婪模式,和非贪婪模式? 贪婪模式,就是"贪得无厌",有了还要,有多少要多少,指导没有(字符串尾 ...
- java 正则表达式 非贪婪模式_正则表达式的贪婪模式和非贪婪模式
一.什么是贪婪模式和非贪婪模式? 定义 贪婪模式:正则表达式趋向于匹配最大长度. 非贪婪模式:正则表达式趋向于匹配最小长度,即一旦匹配到结果就结束. 如何区分? 默认是贪婪模式. 若 量词 后面添加 ...
- js正则贪婪模式_C# 正则表达式贪婪模式案例
案例一. 如 "acbacb" 正则 "a.*?b" 只会取到第一个"acb" 原本可以全部取到但加了限定符后,只会匹配尽可能少的字符 ...
- js正则贪婪模式_JavaScript正则表达式迷你书之贪婪模式-学习笔记
这篇文章主要介绍了JavaScript正则表达式迷你书之贪婪模式-学习笔记,需要的朋友可以参考下 贪婪模式: 在使用修饰匹配次数的特殊符号时,有几种表示方法可以使同一个表达式能够匹配不同的次数,比如: ...
- java 正则 惰性匹配_js正则表达式惰性匹配和贪婪匹配用法分析
本文实例讲述了js正则表达式惰性匹配和贪婪匹配用法.分享给大家供大家参考,具体如下: 在讲贪婪模式和惰性模式之前,先回顾一下JS正则基础: 写法基础: ①不需要双引号,直接用//包含 => /w ...
- java js 正则区别_对比正则表达式在JavaScript与Java中的区别
这篇文章主要介绍了JavaScript与Java正则表达式写法的区别介绍,需要的朋友可以参考下 Js验证写法:(转义符\) var str = "待验证文本"; var regul ...
- C#正则_取出标签内的内容(非贪婪)
using System.Text.RegularExpressions; /// <summary> /// 执行正则提取出值 /// </summ ...
- js 正则匹配邮箱_JS正则匹配邮箱格式
观察一些邮箱格式,有些邮箱格式简单,有些复杂,在网上找了个邮箱的正则表达式,分析一下邮箱的规则. 该表达式: /^\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.\w+$/ 拆分: ...
最新文章
- 【LeetCode笔记】41. 缺失的第一个正数(Java、哈希)
- Kotlin 学习笔记(七)—— Kotlin类与对象之属性与字段
- iOS CoreData简单入门 - Swift版
- rust最低什么显卡能游戏_Steam游戏音轨终于能单独买 游戏显卡铭瑄值得选
- 关于头文件的一道选择题
- 频率和概率、平均值和期望值
- 若依前后端分离前端使用Vue3启动教程
- linux下查看分区信息和剩余空间大小
- 2021-06-18 链接标签
- 正则只能输入数字java_正则表达式限制输入字符,数字,汉字等
- 如何安全地终止线程interrupt()、isInterrupted()、interrupted()的区别与使用
- Java编程语言是什么
- Flash 用FLASH遮罩效果做图片切换效果
- multiparty 和 busboy
- c语言编程八卦方位,易经手掌八卦图,如何C语言编程画一个彩色的周易八卦图...
- TARA-汽车安全概念
- dist文件夹、src文件夹、dest文件夹是什么意思?
- android 摄像头检测工具,检摄app下载-检摄软件(检测摄像头)下载 v1.0.7安卓版_5577安卓网...
- 注册流程(分离HLR/HSS)
- 9种圣诞字体tabs选择
热门文章
- C++ 学生信息管理程序练习
- ceph 代码分析 读_Ceph代码分析
- 硬盘结构及raid磁盘阵列
- 大小写字母的ASCII的对照转换
- 内网liunx环境升级nginx版本(因为nginx 0.6.x < 1.20.1 1-Byte Memory Overwrite RCE 系统漏洞而升级)
- Emscripten 单词_真正的英语大神绝不死背单词! 他们用这种方法一周突破3500词
- 使用DFA算法对敏感词进行过滤
- 【面霸系列 - 3】初级java如何挖掘自身的优势
- php amr时长,amr是什么文件
- 百度内部发文:砥砺风雨坚守使命的背后