正则表达式看过来

1、正则表达式:字符串中字符出现的规则定义,可以看做一种语法经过压缩的程序语言。

  正则表达式使用界定符保卫正则字符串作为正则表达式的代码,常见界定符“/”,"#","~"或者括号() []  {}

2、语法组成

  正则表达式中的语法分为数据结构逻辑控制

  数据结构:1、常用字符串:普通字符组成;2、变量字符串:特殊字符组成

  逻辑控制:1、匹配内容获取与引用;2、匹配位置内容判断;3、匹配内容次数控制;4、匹配逻辑或选择

3、正则表达式的数据结构

  3-1 匹配常量字符串 “/hello/” 忽略大小写“/hello/i”

  3-2 变量字符:

  简单变量字符使用,带有转移的单个特殊字符表示

  \d 匹配一个数字字符   等价于[0-9]

  \D匹配一个非数字字符  等价于[^0-9]

  \s匹配一个任意空白字符  等价于[\n\r\t\v\f]

  \S匹配一个任意非空白字符  等价于[^\n\r\t\v\f]

  \w匹配一个字母/数字/下划线/汉字字符  等价于[A-Za-z0-9]

  \W匹配一个非字母/数字/下划线/汉字字符  等价于[^A-Za-z0-9]

  . 匹配一个除换行\n外的任意字符   等价于[^\n]

   

  \n匹配一个换行符 等价于\x0a和\cl

  \r 匹配一个回车符 等价于\x0ad和\cm

  \t匹配一个水平制表符 等价于\x09和\ci

  \v 匹配一个垂直制表符 等价于\x0b和ck

  \f 匹配一个换页符 等价于\xoc和\cl

  匹配数字字符“/\d/”

  匹配空白字符 /\s/

  匹配单词字符 /\w/  

  3-3 逻辑控制

  

 

  

4、预判断:在正则表达式 前先预读整个字符串进行初步匹配(?=表达式)先浏览字符串是否满足表达式的要求

先检查字符是否有“不满足”表达式要求的;例(?=[47]$)判断字符串中是否含有4或7

5、例子

  邮箱验证:一般的email,形如[email protected],[email protected]这样一些常用的形式就行了,但是在我们公司的一些客户中邮箱却有一些

[email protected],[email protected],[email protected]这 种类似的形式,在@符号之前还有点.原来是拿来就用,可是现在就不行,得自己研究正则的用法了

原来的正则表达式  /^[a-zA-Z0-9_-][email protected][a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;

根据实际情况修改  /^(\w)+(\.\w+)*@(\w)+((\.\w{2,3}){1,3})$/;

或者更加简洁的     /^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/;

时间: 2024-08-05 21:29:15

正则表达式看过来的相关文章

正则表达式---看着很难却很方便好用的工具

正则表达式,我们初见可能会被它那些复杂的表达式吓倒,但是我要告诉大家的是,只要一步一步来,你会发现正则表达式其实并没有你想像中的那么困难,它的出现会让我们写出的代码简介很多,并且验证内容会非常准确.既然使用正则表达式可以方便的验证数据,那么什么是正则表达式呢? 1.定义: 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要.正则表达式就是用于描述这些规则的工具.换句话说,正则表达式就是记录文本规则的代码.RegExp对象是Regular Expression(正则表达式)

浅谈正则表达式

释义: 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表通常被用来检索.替换那些符合某个模式(规则)的文本. 概念: 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑. 给定一个正则表达式和另一个字符串,我们可以达到如下的目的: 1. 给定的字符串

正则表达式的解析

正则表达式看着很难,其实不然:简单介绍一下   首先正则表达式写在这个符号“//”中间 特殊符号^ $ * + ? ¦ . {} \她们的作用分别代表着开始,结束,零次或多次,至少一次或多次,零次或一次,或,任意字符,字符出现的范围值,转义: “^ab”表示所有以ab开头的字符串:如:abc,abd,abte…… //如果这样写的话表示字符串中不能出现ab 如:“e[^ab]” “ab$”表示所有以ab结尾的字符串:r如:tab,wab,wuab…… “^ab$”表示开头和结尾都是以ab结尾的.

黑马程序员-正则表达式基础

正则表达式是一种描述字符串集的方法,它是以字符串集中各字符串的共有特征为依据的.正则表达式可以用于搜索.编辑或者是操作文本和数据.它超出了 Java 程序设计语言的标准语法,因此有必要去学习特定的语法来构建正则表达式.正则表达式的变化是复杂的,一旦你理解了它们是如何被构造的话,你就能解析或者构建任意的正则表达式了..正则表达式由一些普通字符和一些元字符组成. 普通字符包括大小写的字母和数字,而元字符则具有特殊的含义.在最简单的情况下,一个正则表达式看上去就是一个普通的查找串.例如,正则表达式"a

(基础篇) 正则表达式详解

一 什么是正则表达式: 简单的说,正则表达式是一种可以用于模式匹配和替换的强大工具.在几乎所有的基于UNIX/LINUX系统的软件工具中找到正则表达式的痕迹,例如:Perl或PHP脚本语言.此外,JavaScript这种客户端的脚本语言也提供了对正则表达式的支持,现在正则表达式已经成为了一个通用的概念和工具,被各类技术人员所广泛使用. 在某个Linux网站上面有这样的话:"如果你问一下Linux爱好者最喜欢什么,他可能会回答正则表达式:如果你问他最害怕什么,除了繁琐的安装配置外他肯定会说正则表达

iOS开发之详解正则表达式

本文由Charles翻自raywenderlich原文:NSRegularExpression Tutorial: Getting Started更新提示:本教程被James Frost更新到了iOS8和swift.Tutorial团队成员的Soheil Azarpour完成最初发布.正则表达式(广为所知的"regex")是一个字符串或一个字符序列来说明一种模式,把它作为一个搜索字符串-非常强大! 在一个文本编辑器或文字处理器中普通的旧式搜索只允许你进行简单的匹配.正则表达式可以实现这

正则表达式及工具

前言:正则表达式,又称正规表示法.常规表示法.(Regular Expression):正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本.许多程序设计语言(PHP.C#.Java.C++.Objective-c.Swift.VB.Javascript.Ruby以及Python)都支持利用正则表达式进行字符串操作.正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的. 简单来说:正则表达式

jquery正则表达式基础辅助式理解

1.什么是正则表达式? 根据百度百科的说法,正则表达式使用单个字符串来描述,匹配一些列符合某个语法规则的字符串,在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本. 其实嘛,正则表达式就是一个自定义的语法规范而已,就如我们卖书一样,卖什么书卖给谁是由我们决定的.如:我们定义卖历史书籍,并且规定只卖给年满14周岁的人,那么这个时候这个书具体的售卖方式就是由我们决定的.正则在程序中也很类似,做个比方,我们可以将java中的String当做就是一个正则表达式,它同样规定了语法,存

正则表达式的概述

什么是正则表达式 一个正则表达式,就是用某种模式去匹配一类字符串的一个公式.很多人因为它们看上去比较古怪而且复杂所以不敢去使用——很不幸,这篇文章也不能够改变这一 点,不过,经过一点点练习之后我就开始觉得这些复杂的表达式其实写起来还是相当简单的,而且,一旦你弄懂它们,你就能把数小时辛苦而且易错的文本处理工作 压缩在几分钟(甚至几秒钟)内完成.正则表达式被各种文本编辑软件.类库(例如Rogue Wave的tools.h++).脚本工具(像awk/grep/sed)广泛的支持,而且像Microsof