正则表达式记忆表

记忆表


几个简单的例子(JavaScript)

1. + 的用法

var pattern = /ab+g/;

结果
"dfeoabg"  "abg"
"dfeoabfg" null
"dfeoabbg"  "abbg"
"dfeoab" null

2. ? 的用法

var pattern = /ab?g/;

结果
"dfeoag" "ag"
"dfeoabg" "abg"
"dfeoabbg" null
"dfeobg" null

3. (?:) 的用法

var text = "mom and dad and baby";

模式 结果
/mom ( and dad ( and baby))/ ["mom and dad and baby", " and dad and baby", " and baby", index: 0, input: "mom and dad and baby"]
/mom ( and dad (?: and baby))/ ["mom and dad and baby", " and dad and baby", index: 0, input: "mom and dad and baby"]
/mom(?: and dad( and baby))/ ["mom and dad and baby", " and baby", index: 0, input: "mom and dad and baby"]

对于正则表达式 ( and baby) ,() 里的内容被捕获,反向引用时可以用上

 (?: and baby) 可以简单理解成 ?: 关闭了圆括号的捕获能力,只用其来分组,所以不会占用捕获变量,也不能使用反向引用。

关于捕获组与反向引用可参见:http://blog.csdn.net/lxcnn/article/details/4146148

时间: 2024-08-09 21:59:37

正则表达式记忆表的相关文章

正则表达式-字符表

. 点号 匹配任何单个字符(注:点号在字符组内不算元字符) * 星号 表示之前的元素出现任意次数或0次 ? 问号 前面元素出现0次或1次 + 加号 前面元素出现1次以上 - 连字符 注意:只有连字符在字符组内部时,并且出现在两个字符之间时,才能表示字符的范围; 如果出现在字符组的开头,则只能表示连字符本身 ^ 脱字符 表示开头.注意:^在字符组的头部,将转换成排除型字符 $ 美元符 表示结尾. \ 转义符   [ ] 字符组 范围描述符.[a-z]表示从a到z之间的任意一个. \w   英文字母

正则表达式记忆口诀

正则其实也势利,削尖头来把钱揣: (指开始符号^和结尾符号$) 特殊符号认不了,弄个倒杠来引路: (指\. \*等特殊符号) 倒杠后面跟小w, 数字字母来表示: (\w跟数字字母;\d跟数字) 倒杠后面跟小d, 只有数字来表示: 倒杠后面跟小a, 报警符号嘀一声: 倒杠后面跟小b, 单词分界或退格: 倒杠后面跟小t, 制表符号很明了: 倒杠后面跟小r, 回车符号知道了: 倒杠后面跟小s, 空格符号很重要: 小写跟罢跟大写,多得实在不得了: 倒杠后面跟大W, 字母数字靠边站: 倒杠后面跟大S, 空

PHP正则表达式及表单注册案例

正则表达式是一种具有特定模式的用来匹配文本的字符串 preg_match 匹配 $pattern = '/php/'; $subject = "php 是最好的编程语言,php 没有之一!"; $result = preg_match($pattern,$subject); if($result){ echo "<h1>匹配成功</h1>"; }else{ echo "<h1>匹配不成功</h1>"

使用javascript及正则表达式实现表单验证(CSS,js练习)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ

正则表达式实现表单的验证(代码)

<?php header("Content-type:text/html;charset=utf-8"); // 定义变量并设置为空值 $nameErr = $emailErr = $genderErr = $websiteErr = ""; $name = $email = $gender = $comment = $website = ""; if ($_SERVER["REQUEST_METHOD"] == &qu

正则表达式验证表单

不错的JS验证~~~~~~~~~~~~~~~~~~~~~~~~~ 用途:校验ip地址的格式 输入:strIP:ip地址 返回:如果通过验证返回true,否则返回false: */ function isIP(strIP) { if (isNull(strIP)) return false; var re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g //匹配IP地址的正则表达式 if(re.test(strIP)) { if( RegExp.$1 [email protecte

正则表达式查表

非贪婪模式:*?尽可能少匹配   如(.*?)      +?至少匹配前面的形式一次 原生字符串: r"\d"匹配一个数字,一般都要加r,解决转义反斜杠的问题否则要这样写"\\d" 正则表达式修饰符 - 可选标志 re.I: 使匹配对大小写不敏感 re.L:做本地化识别(locale-aware)匹配 re.M:多行匹配,影响 ^ 和 $ re.S:使 . 匹配包括换行在内的所有字符 re.U:根据Unicode字符集解析字符.这个标志影响 \w, \W, \b,

js正则表达式--验证表单

检测手机号码:/0?(13|14|15|18)[0-9]{9}/ 检测用户名:(数字,英文,汉字,下划线,中横线):/^[A-Za-z0-9_\-\u4e00-\u9fa5]+$/ 密码:(数字,英文,下划线,中横线)/^[A-Za-z0-9_-]+$/ 身份证:/\d{17}[\d|x]|\d{15}/ 非空:/^\S+$/ IP地址:/((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d))/ js的正

JavaScript---通过正则表达式验证表单输入

验证输入的name只能是数字或字母或下划线 js <script type="text/javascript"> function submitOn(){ var f = document.getElementById("userfrm"); var isValiUserName = false, isValiPassword = false; var userNameStr = f.username.value; var passwordStr = f