javascript正则表达式容易被忽略的小问题整理
一、中括号[]里面的特殊字符是不用转义的,例如[/]、[.]、[*]、[?]、[+]都是可以直接匹配对应的字符\ . *?+。下面是测试结果:

所以,/[\d.]/这个正则表达式实际上是匹配数字字符或者字符".",作用等同于/[\d\.]/

二、match()和exec()的区别
二者的区别主要在于正则表达式在设置了全局标识符g的情况。
如果没有设置全局标识符g,那么调用string.match(regexp)的结果和调用regexp.exec(string)的结果是相同的,
但在设置了全局标识符g时,string.match(regexp)会把所有的匹配都放入结果数组中,regexp.exec(string)的结果则只给出第一个成功的匹配。
而用regexp.lastIndex属性来记录下一次匹配开始的位置。测试如下:

PS:另外要注意的是lastIndex只对exec()和test()方法起作用,string.match(regexp)是不会影响regexp这个正则的lastIndex属性的。
相关推荐
-
如何使用Javascript正则表达式来格式化XML内容
使用得是Emeditor ,在看XML文档时,总是因为格式混乱而看不清.这个是一个Emeditor宏来自动格式化XML.下载:formatXml.rar(1,021.00 bytes)下面这段是这个网页版的javascript格式化XML的代码. 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head> <meta http-
-
javascript中正则表达式反向引用示例介绍
最近遇到一个需求,传入一个字符串,每三个字符插入一个空格 例: 传入abcd1234 输出 abc d12 34 思考了一下,准备写一个函数如下 复制代码 代码如下: function appendSpace(s) { var length = s.length; var result = ""; var last = 0; for(var i = 3;i<=length;i=i+3,last = last+3) { result = result+s.substring(i-3
-
java正则表达式解析html示例分享
复制代码 代码如下: package work; import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.util.regex.Matcher;import java.util.regex.Pattern; import org.apache.commons.httpclient.DefaultH
-
java正则表达式表单验证类工具类(验证邮箱、手机号码、qq号码等)
java使用正则表达式进行表单验证工具类,可以验证邮箱.手机号码.qq号码等 复制代码 代码如下: package util; import java.util.regex.Matcher;import java.util.regex.Pattern; /** * 使用正则表达式进行表单验证 * */ public class RegexValidateUtil { static boolean flag = false; static String regex = ""
-
java正则表达式验证邮箱、电话号码示例
下面的代码使用正则表达式验证输入格式包括了验证邮箱和验证手机号码 复制代码 代码如下: package com.firewolf.utils; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 使用正则表达式验证输入格式 * @author liuxing * */ public class RegexValidateUtil { public static void main(String[]
-
RegexOptions.IgnoreCase正则表达式替换,忽略大小写
//////////////////////////// string inputstr = "@{AbcD},@{bbbb},@{ABcd}"; string pmType = "@"; string regTxt = (pmType + "\\s*\\{\\s*" + "abcd" + "\\s*\\}").Replace("(&
-
javascript正则表达式参数/g与/i及/gi的使用指南
regularexpression=/pattern/[switch] 这个switch就有三种值 g: 全局匹配 i: 忽略大小写 gi: 全局匹配 + 忽略大小写 JScript 语言参考 -------------------------------------------------------------------------------- 后向引用 正则表达式一个最重要的特性就是将匹配成功的模式的某部分进行存储供以后使用这一能力.请回想一下,对一个正则表达式模式或部分模式两边添加圆
-
javascript 获取url参数的正则表达式(用来获取某个参数值)
例子: //javascript传参数(多个) var url = "B.aspx?txtA="+document.getElementById("txtName").value; url +="&txtB="+document.getElementById("txtAge").value; window.open(url,'xWindow','width=640,height=400,status=no,toolba
-
比较全面的C 、Java、JavaScript中的正则表达式详解
什么是正则表达式? 正则表达式(Regular Expression) 就是用某种模式去匹配一类字符串的公式.如你要在一篇文章中查找第一个字是"罗"最后一个字是"浩"的三个字的姓名,即"罗 * 浩":那么"罗 * 浩"就是公式,也称作 模式(Pattern) ,这篇文章就是 要匹配的串( 或叫文本 text) .再如,你要检查输入的一个字符串是否是 126 邮箱的格式,你得制定一个规则去查检,这种规则就是正则表达式. 从入门开
-
js正则表达式之match函数讲解
功能:使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回 函数格式:stringObj.match(rgExp) stringObj为字符串必选 rgExp为正则表达式必选项 返回值:如果能匹配则返回结果数组,如果不能匹配返回null 复制代码 代码如下: <html> <script language="javascript" type="text/javascript"> //使用正则表达式模式对字符串执行查找,并将包含查
-
java正则表达式匹配网页所有网址和链接文字的示例
复制代码 代码如下: import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.MalformedURLException;import java.net.URL;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.
随机推荐
- thinkphp实现无限分类(使用递归)
- asp.net button 绑定多个参数
- 如何判断php mysqli扩展类是否开启
- ThinkPHP的MVC开发机制实例解析
- 怎样使用Python脚本日志功能
- PHP中spl_autoload_register()函数用法实例详解
- android在连拍菜单中增加连拍张数选项功能实现代码
- googlemap 之 javascript实现方法
- 完美解决ntp的错误问题no server suitable for synchronization fo
- java教程之java程序编译运行图解(java程序运行)
- Shell脚本实现批量下载资源并保留原始路径
- win10设置java环境变量的方法
- 玩转浏览器IE7的5个顶级使用技巧
- Java实现较大二进制文件的读、写方法
- JAVA帮助文档全系列 JDK1.5 JDK1.6 JDK1.7 官方中英完整版整理
- C语言辗转相除法求2个数的最小公约数
- SqlConnection.ConnectionString相关关键字
- PHP中的加密功能
- Android重写View实现全新的控件
- PHP实现的猴王算法(猴子选大王)示例
