java正则表达式 PHP中的正则表达式函数介绍
正则表达式(Regular Expression)
正则表达式系统:
1.POSIX
2.Perl
PHP中使用的regex是PCRE:
NOTE:PCRE(Perl兼容正则表达式,Perl Compatible Regular Expressions)
PCRE语法:
1.定界符
必须成对出现,可以使用除0-9a-zA-Z\以外的任何字符
2.原子
1.正则需要匹配的可见和不可见字符都是原子
2.一个正则表达式最少含有一个原子
3.当需要匹配诸如"("、"["、"^"等含有语义的符号时需要用"\"反斜线进行转义
原子字符:
\f 匹配换页符
\n 匹配换行符
\r 匹配回车符
\t 匹配制表符
\v 匹配垂直制表符
3.元字符
\ 转义字符
^ 匹配字符串起始处
$ 匹配字符串末尾
. 匹配除"\n"之外的任何单个字符
* 匹配前面的子表达式0或多次
+ 匹配前面的子表达式1次或多次
? 匹配前面的子表达式0次或1次
{n} 匹配n次
{n,} 匹配n次或n次以上
{n,m} 最少匹配n次至多匹配m次,(n [] 中括号代表原子表,中间的原子地位都是相等。在匹配的时候,匹配表中的任意一个字符
[^] 抑扬符,排除后面的原子表所包含的字符。
(pattern) 匹配pattern并获取这一匹配。
\num 对获取的第num个匹配的引用。
(?:pattern) 匹配pattern但不获取这一匹配
(?=pattern) 正向肯定预查,非获取匹配,例如:windows(?=XP|7)能匹配windowsXP中的windows不能匹配windows98中的windows
(?!=pattern) 正向否定欲查非获取匹配,例如:windows(?!98|2000),能匹配windowsXP中的windows,不能匹配windows98中的windows
(? (? \b 匹配单词边界
\B 匹配除单词边界以外的字符
\d 匹配任何一个数字。等价于[0-9]
\D 匹配任何一个非数字以外的字符。等价于[^0-9]
\s 匹配任何一个空白字符(包括空格、制表符、换页符等)。等价于[\f\n\r\t\v]
\S 匹配任何一个非空白字符。等价于[^\f\n\r\t\v]
\w 匹配任何一个数字、字母或下划线。等价于[0-9a-zA-Z]
\W 匹配任何一个非数字、字母或下划线的字符。等价于[^0-9a-zA-Z]
4.模式修正符
i 不区分大小写
m 此模式中如果有回车或换行,^和$将匹配每行的行首和行尾
s 让.能匹配\n
x 忽略空白
U 取消贪婪,相当于(.*?)
A 与^效果一样
D 结尾处不忽略回车 ,在结束处有$符的时候,在匹配的字符串后面加上回车,$依然能够匹配它成功。但是加上D之后,结尾的回车,不再匹配
NOTE:正则表达式是从左向右进行匹配的
相关函数:
preg_filter — 执行一个正则表达式搜索和替换
preg_grep — 返回匹配模式的数组条目
preg_last_error — 返回最后一个PCRE正则执行产生的错误代码
preg_match_all — 执行一个全局正则表达式匹配
preg_match — 执行一个正则表达式匹配
preg_quote — 转义正则表达式字符
preg_replace_callback — 执行一个正则表达式搜索并且使用一个回调进行替换
preg_replace — 执行一个正则表达式的搜索和替换
preg_split — 通过一个正则表达式分隔字符串
以上就介绍了java正则表达式 PHP中的正则表达式函数介绍,包括了java正则表达式方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Java正则表达式语法详解与实战指南引言:正则表达式是一种强大的文本处理工具,其可以通过一种特定的语法规则来匹配、查找和替换字符串。在Java编程语言中,可以通过Java.util.regex包提供的类来使用正则表达式。本篇文章将详细介绍Java正则表达式的语法,并提供实际的代码示例。一、基本语法:1.单个字符匹配:-字符类:用方括号[]表示,表示从字符列

Java正则表达式高级应用指南引言:正则表达式是一种强大的文本模式匹配工具,使用正则表达式可以在字符串中执行各种复杂的搜索、替换和提取操作。在Java中,正则表达式是通过java.util.regex包提供的类来实现的。本文将为读者介绍Java正则表达式的高级应用,并提供具体的代码示例。一、基本概念和语法1.1正则表达式的基本概念正则表达式是由字符和特殊字

深入解析Java正则表达式语法,需要具体代码示例正则表达式是一种强大的模式匹配工具,它在各种编程语言中都得到了广泛的应用。在Java中,我们可以使用java.util.regex包提供的类来实现正则表达式的功能。本文将深入探讨Java正则表达式的语法,并结合具体的代码示例进行说明。一、基本语法匹配字符在正则表达式中,我们可以使用普通字符来匹配相同的字符。例如

PatternSyntaxException类表示在正则表达式字符串中出现语法错误时引发的未经检查的异常。该类包含三个主要方法,即-getDescription() -返回错误的描述。getIndex()-返回错误索引。getPattern()-返回出现错误的正则表达式模式。getMessage()-返回包含错误的完整消息、索引、出现错误的正则表达式模式、指示模式中的错误。示例 实时演示importjava.util.Scanner;importjava.util.regex.Matcher;i

Java是一种广泛使用的编程语言,它提供了强大的字符处理功能,其中包括使用正则表达式的功能。正则表达式是一种模式匹配工具,它非常有用,可以在处理文本和字符串时快速地查找、替换、验证和提取特定的模式和数据。Java中的正则表达式使用的是java.util.regex包。该包中的类包括Pattern和Matcher,这两个类提供了正则表达式的核心功

Java正则表达式语法实例:匹配邮箱和手机号码,需要具体代码示例正则表达式是一种强大的文本匹配工具,可以用来从文本中提取和匹配所需的信息。在Java中,使用正则表达式需要使用到java.util.regex包提供的相关类和方法。本文将介绍如何使用正则表达式来匹配邮箱和手机号码,并给出具体的代码示例。一、匹配邮箱邮箱的格式通常是"用户名@域名",其中用户名和域

如何在Java中使用正则表达式函数进行字符串匹配和替换操作引言:在Java编程中,我们经常需要对字符串进行匹配和替换的操作。这些操作可以使用正则表达式函数来实现,正则表达式是一种强大的模式匹配工具。本文将介绍如何在Java中使用正则表达式函数进行字符串的匹配和替换操作,并提供具体的代码示例。一、使用正则表达式进行字符串匹配在Java中,我们可以使用Patte

Java是一种流行的编程语言,它提供了强大的正则表达式工具,能够在处理字符串时提高效率。正则表达式是一个模式,用于描述一组字符串,并可用于执行模式匹配、查找和替换操作。在下面的文章中,我们将学习如何在Java中使用正则表达式。正则表达式语法Java的正则表达式基于Perl语言的正则表达式语法,并包含了一些Java独有的语法。正则表达式由字符和特殊字符组成,其
