php正则及常用正则函数怎么用
php正则及常用正则函数怎么用
一、总结
一句话总结:
能够使用正则的函数:
preg_match();
preg_match_all();
preg_replace();
preg_grep();
preg_split();
1、php正则中原子是什么,有哪些?
解答:原子,就是那些整体咯。例如原子: . a-z A-Z 0-9 [0-9] [^0-9] \d \D \w \W \s \S。
2、php正则中的元字符是什么,有哪些?
解答:操作符。例如:元字符: * #0个、1个或多个 + #1个或多个 ? #0个或1个 | #或 \b #词边界 \B #非词边界 {3} #3个 {3,7} #3个到7个 {3,} #3个以上 ^ #以什么开始 $ #以什么结尾 。
3、php正则中 的单词边界元字符怎么使用?
解答:\b单词\b,$ptn='/\b\d\b/';。
4、php正则调用反向引用的两种方式?
解答:$符号和反斜杠。向后引用: (abc) $1 \\1。$str="2014-10-20"; $ptn='/(\d+)-(\d+)-(\d+)/'; $rep='$1/$2=$3'; $rep='\\1/\\2=\\3';。
5、php正则中的模式修正符中的U怎么用?
解答:U #贪婪模式(最小化匹配)。$str="php 5 a777nd and 6666 and 8888888"; $ptn='/\d{3,7}/U'; preg_match_all($ptn,$str,$mt);。
6、php正则模式修正符中的m怎么用?
解答:匹配多行。$str="linux is very much php\nLINUX is very much PHP"; $ptn='/^linux/im';。
7、php正则中的preg_replace();函数的使用场景?
解答:可和反向引用一起使用。引用替换。$str="2014-10-20"; $ptn='/(\d+)-(\d+)-(\d+)/'; $rep='$1/$2=$3'; echo preg_replace($ptn,$rep,$str);。
8、php正则中的preg_grep();函数的使用场景?
解答:preg_grep在数组中搜索包含指定值的元素。$arr=array( 'linux is very much!', 'php is very much!', 'java is very much!', 'html5 is very much!', ); $arr=preg_grep('/linux|php|java|html5/',$arr); 。
9、php正则preg_split();函数的使用场景?
解答:多个不同符号分割。$str="2014-10=20+30/50"; $arr=preg_split('/-|=|\+|\//',$str);。
二、php正则及常用正则函数怎么用
1、正则使用
2、学习笔记
正则表达式:
1.原子
2.元子符
3.模式修正符
1、原子:
.
a-z
A-Z
0-9
[0-9]
[^0-9]
\d
\D
\w
\W
\s
\S
2、元字符:
* #0个、1个或多个
+ #1个或多个
? #0个或1个
| #或
\b #词边界
\B #非词边界
{3} #3个
{3,7} #3个到7个
{3,} #3个以上
^ #以什么开始
$ #以什么结尾
3、向后引用:
(abc)
$1
\\1
4、模式修正符:
i #忽略大小写
U #贪婪模式(最小化匹配)
m #把\n视为多行
5、能够使用正则的函数:
preg_match();
preg_match_all();
preg_replace();
preg_grep();
preg_split();
6、正则使用场景:
1.手机格式
/^\d{11}$/
2.邮箱格式
/^\w+@\w+\.\w$/
3.139开头的手机格式
/^139\d{8}$/
4.QQ号格式
/^\d{6,11}$/
三、测试题-简答题
1、php正则中原子是什么,有哪些?
解答:原子,就是那些整体咯。例如原子: . a-z A-Z 0-9 [0-9] [^0-9] \d \D \w \W \s \S。
2、php正则中的元字符是什么,有哪些?
解答:操作符。例如:元字符: * #0个、1个或多个 + #1个或多个 ? #0个或1个 | #或 \b #词边界 \B #非词边界 {3} #3个 {3,7} #3个到7个 {3,} #3个以上 ^ #以什么开始 $ #以什么结尾 。
3、php正则中 的单词边界元字符怎么使用?
解答:\b单词\b,$ptn='/\b\d\b/';。
4、php正则调用反向引用的两种方式?
解答:$符号和反斜杠。向后引用: (abc) $1 \\1。$str="2014-10-20"; $ptn='/(\d+)-(\d+)-(\d+)/'; $rep='$1/$2=$3'; $rep='\\1/\\2=\\3';。
5、php正则中的模式修正符中的U怎么用?
解答:U #贪婪模式(最小化匹配)。$str="php 5 a777nd and 6666 and 8888888"; $ptn='/\d{3,7}/U'; preg_match_all($ptn,$str,$mt);。
6、php正则模式修正符中的m怎么用?
解答:匹配多行。$str="linux is very much php\nLINUX is very much PHP"; $ptn='/^linux/im';。
7、php正则中的preg_replace();函数的使用场景?
解答:可和反向引用一起使用。引用替换。$str="2014-10-20"; $ptn='/(\d+)-(\d+)-(\d+)/'; $rep='$1/$2=$3'; echo preg_replace($ptn,$rep,$str);。
8、php正则中的preg_grep();函数的使用场景?
解答:preg_grep在数组中搜索包含指定值的元素。$arr=array( 'linux is very much!', 'php is very much!', 'java is very much!', 'html5 is very much!', ); $arr=preg_grep('/linux|php|java|html5/',$arr); 。
9、php正则preg_split();函数的使用场景?
解答:多个不同符号分割。$str="2014-10=20+30/50"; $arr=preg_split('/-|=|\+|\//',$str);。
php正则及常用正则函数怎么用的更多相关文章
- HIVE常用正则函数(like、rlike、regexp、regexp_replace、regexp_extract)
Oralce中regex_like和hive的regexp对应 LIKE 语法1: A LIKE B 语法2: LIKE(A, B) 操作类型: strings 返回类型: boolean或null ...
- Javascript正则构造函数与正则表达字面量&&常用正则表达式
本文不讨论正则表达式入门,即如何使用正则匹配.讨论的是两种创建正则表达式的优劣和一些细节,最后给出一些常用正则匹配表达式. Javascript中的正则表达式也是对象,我们可以使用两种方法创建正则表达 ...
- PHP中常用的正则表达式由哪些元素构成?
在程序开发中,我们常常要用到正则表达式,对于新手来说,很多时候知道正则表达式是怎么回事,但当真正需要使用的时候,却不知该用什么函数,具体的修饰符也比较混乱.下面小编就为大家整理了一些php正则表达式中 ...
- Java正则速成秘籍(一)之招式篇
导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...
- Java正则速成秘籍(二)之心法篇
导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...
- Java正则速成秘籍(三)之见招拆招篇
导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...
- iOS 中的正则匹配(工具类方法)
正则表达式 正则表达式是对字符串操作的一种逻辑公式, 用事先定义好的一些特定字符.及这些特定字符的组合, 组成一个"规则字符串", 这个"规则字符串"用来表达对 ...
- PHP常用函数总结(一):
<?php echo "<pre>"; //===============================时间日期======================== ...
- 爬虫的三种解析方式(正则解析, xpath解析, bs4解析)
一 : 正则解析 : 常用正则回顾: 单字符: . : 除换行符以外的所有字符 [] : [aoe] [a-w] 匹配集合中任意一个字符 \d : 数字 [0-9] \D : 非数字 \w : 非数字 ...
随机推荐
- js原生代码实现鼠标拖拽(超简单)
首先先来看这一张图 在这种图中,盒子的大小为512px,并且margin-left:-250px margin-top:140px;并通过一些样式让其在中部显示 这些样式都不是重要的,这里加个marg ...
- postman带cookie进行请求
接口地址: https://m.xxxx.com/api/front/activity/xs/session 打开postman的headers, 然后复制fiddler中接口的cookie,设置co ...
- 作为一个新人,怎样学习嵌入式Linux?(韦东山)
这篇文章是引用韦老师的部分关于新人怎么学习嵌入式Linux的经验,引用如下: 1.电脑一开机,那些界面是谁显示的?是BIOS,它做什么?一些自检,然后从硬盘上读入windows,并启动它. 类似的, ...
- HDU 1166 敌兵布阵 树状数组||线段树
http://acm.hdu.edu.cn/showproblem.php?pid=1166 题目大意: 给定n个数的区间N<=50000,还有Q个询问(Q<=40000)求区间和. 每个 ...
- es6三点运算符的用法
扩展运算符( spread )是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列. console.log(...[1,2,3]); console.log(1,. ...
- shiro 中的filterChainDefinitions详解(转)
springrain使用shiro控制权限,配置filterChainDefinitions结合数据库校验权限. 我们在web.xml中配置一个全局过滤器,也就是在springrain配置的是一个sp ...
- Springboot+shiro配置笔记+错误小结(转)
软件152 尹以操 springboot不像springmvc,它没有xml配置文件,那该如何配置shiro呢,其实也不难,用java代码+注解来解决这个问题.仅以此篇记录我对shiro的学习,如有对 ...
- Android之怎样用代码使编辑框等组件显示为圆角
圆角button实现 圆角button大家很常见.有时候你可能会使用ps来加工圆角图片来实现想要的效果, 今天通过简短的代码来达到这样的效果.(由于这个跟project无关.仅仅是一种效果,所以我就单 ...
- vs2008,2010,2012安装包下载
近期在csdn学院当老师啦.把自己以学到的东西总结一下,录个视频给大家,也当发一下福利.这些以后都是自己无形的財产.哈哈. 安装与下载编程工具 Vs2008下载地址:http://pan.baidu. ...
- tomcat自动URLDecode解码问题(+号变空格)
最近项目中出现一个问题,就是前段调后端接口,参数带+号,传到后端后+号自动URLDecode成空格了. 1.问题排查 条件:tomcat配置server.xml有URIEncoding="U ...