`
- 浏览:
43944 次
- 性别:
- 来自:
北京
-
-
以前正规表达式的学习笔记:
-
一。概念及语法定义
-
定义:正则表达式是一种可以用于模式匹配和替换的强有力的工具。
-
语法:
-
定界符:“/”。
-
其中位于“/”定界符之间的部分就是将要在目标对象中进行匹配的模式。
-
-
元字符:“+”,“*”,“?”。
-
“+”元字符规定其前导字符必须在目标对象中连续出现一次或多次。
-
“*”元字符规定其前导字符必须在目标对象中出现零次或连续多次。
-
“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次。
-
几个特殊的元字符:
-
\s:用于匹配单个空格符,包括tab键和换行符;
-
\S:用于匹配除单个空格符之外的所有字符;
-
\d:用于匹配从0到9的数字;
-
\w:用于匹配字母,数字或下划线字符;
-
\W:用于匹配所有与\w不匹配的字符;
-
. :用于匹配除换行符之外的所有字符。
-
-
指定模式在匹配对象中出现的频率:
-
{n} n 是一个非负整数。匹配确定的 n 次。
-
{n,} n 是一个非负整数。至少匹配 n 次。
-
{n,m} m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。
-
-
定位符:
-
“^”定位符规定匹配模式必须出现在目标字符串的开头
-
“$”定位符规定匹配模式必须出现在目标对象的结尾
-
“\b”定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一
-
“\B”定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内,
-
即匹配对象既不能作为目标字符串的开头,也不能作为目标字符串的结尾。
-
-
在匹配模式中指定某一个范围而不局限于具体的字符:
-
[]。如:[A-Z]从A到Z范围内任何一个大写字母相匹配。
-
说明:当“^”出现在 “[]”内时就被视做否定运算符;而当“^”位于“[]”之外,或没有“[]”时,则应当被视做定位符。
-
优先级如下:
-
1.\ 转义符
-
2.(), (?:), (?=), [] 圆括号和方括号
-
3.*, +, ?, {n}, {n,}, {n,m} 限定符
-
4.^, $, \anymetacharacter 位置和顺序
-
5.|“或”操作
-
-
正规表达式对象包含正则表达式模式以及表明如何应用模式的标志。
-
语法有:
-
1。 re = /pattern/[flags]
-
2。 re = new RegExp("pattern",["flags"])
-
参数
-
re
-
必选项。将要赋值为正则表达式模式的变量名。
-
Pattern
-
必选项。要使用的正则表达式模式。如果使用语法 1,用 "/" 字符分隔模式。如果用语法 2,用引号将模式引起来。
-
Flags
-
可选项。如果使用语法 2 要用引号将 flag 引起来。标志可以组合使用,可用的有:
-
代码
-
g (全文查找出现的所有 pattern)
-
i (忽略大小写)
-
m (多行查找)
-
-
exec方法:
-
用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组。
-
re.exec(str)
-
match 方法
-
使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回。
-
str.match(re)
-
search 方法
-
返回与正则表达式查找内容匹配的第一个子字符串的位置。
-
str.search(re)
-
test方法
-
返回一个 Boolean 值,它指出在被查找的字符串中是否存在模式。
-
re.test(str)
-
-
二:网摘实例
-
在使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍如下:
-
只能输入数字:“^[0-9]*$”
-
只能输入n位的数字:“^d{n}$”
-
只能输入至少n位数字:“^d{n,}$”
-
只能输入m-n位的数字:“^d{m,n}$”
-
只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$”
-
只能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$”
-
只能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?$”
-
只能输入非零的正整数:“^+?[1-9][0-9]*$”
-
只能输入非零的负整数:“^-[1-9][0-9]*$”
-
只能输入长度为3的字符:“^.{3}$”
-
只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$”
-
只能输入由26个大写英文字母组成的字符串:“^[A-Z]+$”
-
只能输入由26个小写英文字母组成的字符串:“^[a-z]+$”
-
只能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$”
-
只能输入由数字、26个英文字母或者下划线组成的字符串:“^w+$”
-
验证用户密码:“^[a-zA-Z]w{5,17}$”正确格式为:以字母开头,长度在6-18之间,
-
只能包含字符、数字和下划线。
-
验证是否含有^%&’,;=?$”等字符:“[^%&’,;=?$x22]+”
-
只能输入汉字:“^[u4e00-u9fa5],{0,}$”
-
验证Email地址:“^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$”
-
验证InternetURL:“^http:
-
验证电话号码:“^((d{3,4})|d{3,4}-)?d{7,8}$”
-
-
正确格式为:“XXXX-XXXXXXX”,“XXXX-XXXXXXXX”,“XXX-XXXXXXX”,
-
-
“XXX-XXXXXXXX”,“XXXXXXX”,“XXXXXXXX”。
-
验证身份证号(15位或18位数字):“^d{15}|d{}18$”
-
验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12”
-
验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$”
-
-
正确格式为:“01”“09”和“1”“31”。
-
-
匹配中文字符的正则表达式: [u4e00-u9fa5]
-
匹配双字节字符(包括汉字在内):[^x00-xff]
-
匹配空行的正则表达式:n[s| ]*r
-
匹配HTML标记的正则表达式:/< (.*)>.*|< (.*) />/
-
匹配首尾空格的正则表达式:(^s*)|(s*$)
-
匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
-
匹配网址URL的正则表达式:http:
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它用于匹配、查找、替换等操作,涉及字符串处理的各个领域。正则表达式转换工具是专门针对这一需求而设计的,它能帮助用户将输入的内容转换...
正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配和搜索。在C#编程语言中,正则表达式被广泛应用于数据验证、文本提取、格式转换等多个场景。本项目提供了一个C#编写的正则表达式测试工具,包含完整...
总的来说,正则表达式转NFA的实现是理论与实践的结合,它涉及编译原理、形式语言和自动机理论等领域的知识,对于理解和处理字符串模式匹配问题具有深远的意义。在实际应用中,这一转换过程常被用于文本分析、搜索...
例如,"子程序_正则文本替换"可能就是一个易语言中用于执行正则表达式替换的子程序,它接收输入的文本、正则表达式模式和替换字符串,然后返回经过替换操作的新文本。 1. **正则表达式基础** - **元字符**:如`.`...
在IT领域,SQL语法分析和正则表达式是两种非常重要的技术,它们在处理和解析文本数据时起着至关重要的作用。SQL(Structured Query Language)是用于管理关系数据库的标准语言,而正则表达式则是匹配和操作字符串的...
正则表达式作为一种文本处理工具,在计算机编程和数据处理领域中扮演着极其重要的角色。它不仅适用于几乎所有编程语言和计算机平台,而且能够执行复杂的文本搜索、匹配、替换和提取操作。正则表达式的核心是通过定义...
正则表达式(Regular Expression,简称regex)是一种用于匹配字符串的强大工具,广泛应用于文本处理、数据验证、搜索和替换等场景。在编程语言中,正则表达式通常以字符串的形式存在,通过特定的语法和模式来定义...
### 正则表达式基础知识与应用 #### 一、正则表达式的定义及用途 正则表达式(Regular Expression)是一种强大的文本处理工具,能够帮助用户查找、替换以及操作特定的字符串或字符组合。它在多种编程语言和操作...
根据提供的文件信息,我们可以整理出一系列与正则表达式相关的知识点。这些知识点涵盖了从基本的数字验证到复杂的字符串匹配等多个方面。下面是详细的知识点总结: ### 基本概念 正则表达式是一种用于文本模式匹配...
在易语言中,正则表达式是进行文本处理、数据提取和搜索的关键工具,尤其在处理中文字符时显得尤为重要。本文将深入探讨易语言中的正则表达式匹配中文的原理、方法以及应用。 正则表达式(Regular Expression)是一...
正则表达式是一种强大的文本处理工具,用于匹配字符串模式。在计算机科学中,它与形式语言理论密切相关,尤其是在编译器设计和文本处理程序中。正则表达式通常被转换为确定有限状态自动机(DFA)以进行高效地模式...
在IT领域,正则表达式(Regular Expression)是一种强大的文本处理工具,用于匹配字符串模式。它们广泛应用于数据验证、搜索、替换等操作。本话题主要关注如何根据正则表达式生成满足该模式的数据,这在测试、数据...
正物色一本学习正则表达式的入门图书?恭喜,《学习正则表达式》非常适合你!本书提供大量经典简洁的示例,从零开始教你逐步掌握正则表达式。通过匹配特定单词、字符和模式,读者很快就可以自己动手使用正则表达式...
在IT领域,文本处理是日常工作中不可或缺的一部分,而grep、sed、awk和perl这四个工具在处理文本时都广泛地使用了正则表达式。它们各自有着不同的特性和适用场景,理解它们之间的差异有助于我们更高效地进行文本操作...
正则表达式(Regular Expression,简称regex)是用于匹配字符串的一种模式,广泛应用于文本处理、数据验证、搜索和替换等场景。在Python编程语言中,正则表达式提供了强大的文本处理能力,使得开发者能够高效地处理...
特别是在处理文本操作时,字符串和正则表达式是两个至关重要的概念。本文将深入探讨C#中的字符串操作和正则表达式使用,帮助你更好地理解和运用这些工具。 一、C#字符串 1. 字符串基础:在C#中,字符串是不可变...
用JAVA写的一个将正则表达式转换为NFA的代码,基于Thompson算法的思想,递归构建NFA。jar为源码文件。 输出非确定有限自动状态机的有向图。如正则表达式: c(a|b)NFA为:0-c->1-ep->2-a->3-ep->7 ,0-c->1-ep->4-b->5-...
### Oracle正则表达式详解(用法+实例) #### 一、正则表达式简介 正则表达式是一种用于匹配字符串中字符组合的工具。它由一个或多个字符及特殊的字符元组成,能够帮助我们执行复杂的字符串搜索和替换任务。在...
### 正则表达式详解 #### 一、正则表达式的定义与背景 正则表达式(Regular Expression),简称regex或regexp,是一种用于描述文本模式的强大工具。它可以帮助我们在文本中进行精确匹配、查找以及替换操作。正则...
正则表达式是一种强大的文本处理工具,用于匹配和操作字符串模式。它们在编程语言中广泛使用,例如在C语言中,常用于数据验证、搜索、替换等任务。本项目涉及的是将正则表达式转换为非确定性有限状态自动机(NFA),...