快速掌握JavaScript正则表达式
作者:dh20156 来源:w3cgroup 发布时间:2010-01-23 11:39:00
标签:EcmaScript,正则表达式
EcmaScript正則表達式( 深入淺出系列之淺出 ^_^ )
在线正则表达式测试:http://www.aspxhome.com/RegExp-Tester.htm
使用方法
創建對象
var r = new RegExp("表達式","ig");
適合在動態構造匹配對象時使用;
表達式中轉義符需要使用兩次,如\\d;
直接量
var r = /表達式/ig;
使用在任何固定模式的匹配;
常用屬性
$1...$9
返回九个在模式匹配期间找到的、最近保存的部分。只读。
index
返回第一个成功匹配的开始位置。只读。
lastIndex *(注意)
返回最后一次成功匹配的位置(下一次匹配開始的位置)。讀寫。
只有當使用exec()或test()函數時才會寫入。
lastMatch
返回最后匹配的字符。只读。
input
返回查找的字符串。只读。
lastIndex
考慮以下代碼:
<script type="text/javascript">
var r = /\d/g;
alert(r.test('abc1'));
alert(r.lastIndex);
alert(r.test('ab1'));
alert(r.lastIndex);
alert(r.test('a1'));
alert(r.lastIndex);
</script>
lastIndex屬于實例屬性
當一個正則表達式實例多次test或exec時,它的lastIndex將每一次都被更改。
量詞
?
出現0次或1次
*
出現0次或多次
+
出現1次或多次
{n}
一定出現n次
{n,m}
至少出現n次,最多出現m次
{n,}
至少出現n次
貪婪與非貪婪(惰性)的量詞
貪婪匹配:
?
*
+
{n}
{n,m}
{n,}
非貪婪匹配:
??
*?
+?
{n}?
{n,m}?
{n,}?


猜你喜欢
- 在Python我们要判断一个文件对当前用户有没有读、写、执行权限,我们通常可以使用os.access函数来实现,比如:# 判断读权限os.a
- SQL Server 的扩展存储过程,其实就是一个普通的 Windows DLL,只不过按照某种规则实现了某些函数而已。近日在写一个扩展存储
- 本文为大家分享了两段PHP分页类,很实用,供大家参考,具体内容如下<?php class Page { private $
- 一、基本使用selenium 的基本使用步骤:打开浏览器;获取浏览器页面的特定内容;控制浏览器页面上的控件,如向一个文本框中输入一个字符串;
- 数据库属于 IO 密集型的应用程序,其主要职责就是数据的管理及存储工作。而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘
- MapPathMapPath 方法将指定的相对或虚拟路径映射到服务器上相应的物理目录上。语法Server.MapPath( Path ) 参
- 前言字符串是 字符的序列 。字符串基本上就是一组单词。我几乎可以保证你在每个Python程序中都要用到字符串,所以请特别留心下面这部分的内容
- 本文实例为大家分享了python批量梯度下降算法的具体代码,供大家参考,具体内容如下问题:将拥有两个自变量的二阶函数绘制到空间坐标系中,并通
- shapefile是GIS中非常重要的一种数据类型,在ArcGIS中被称为要素类(Feature Class),主要包括点(point)、线
- 什么是变量在Python编程语言中,变量是用于存储数据值的标识符。它们可以用来引用数据值,而不是直接使用值本身。可以使用等号(=)运算符来将
- Inotify地址:访问# -*- coding:utf-8 -*-import osimport pyinotifyfrom functi
- 本文实例讲述了Python实现的凯撒密码算法。分享给大家供大家参考,具体如下:一 介绍凯撒密码是一种非常古老的加密方法,相传当年凯撒大地行军
- python去除列表中的空值元素实战技巧产生需求的原因:最近都在使用python做一些小demo,尤其是经常会用python做一些关于数据处
- 运行环境:Windows 8.1Python:2.7.6在安装的时候,我使用的pip来进行安装,命令如下:pip install beaut
- 一,问题因为我想在我的服务器上部署两个vue项目,但是vue打包后默认的项目名是dist,这样子就跟我上一个vue项目冲突了。因此查了一下资
- 什么是 YARPYARP (另一个反向代理) 设计为一个库,提供核心代理功能,你可以根据应用程序的特定需求进行自定义。YARP 是使用 .N
- 【导语】:对自己写的冗长代码,想重构但又无思路?小编整理了系列介绍python代码重构优化的方法,助你一臂之力。编写干净的 Pythonic
- ERROR 1665 (HY000)【环境描述】msyql5.6.14【报错信息】执行SQL语句的时候报错:ERROR 1665 (HY00
- 由于python多线程无法发挥多核的作用,因此当计算量很大的时候就需要考虑多进程。只不过多进程比较麻烦一些,进程中通信向来是一件麻烦事。py
- 爆库语句,修改红色部分的数字挨个猜出库 /**/and/**/(select/**/top/**/1/**/isnull(cast([nam