php认识正则吗,php正则表达式有什么用
我们什么时候使用正则表达式呢?不是所有的字符操作都用正则就好了,php在某些方面用正则反而影响效率。当我们遇到复杂文本数据的解析时候,用正则是比较好的选择。
优点
正则表达式在处理复杂字符操作的时候,可以提高工作效率,也在一定程度节省你的代码量。
缺点
我们在使用正则表达式的时候,复杂的正则表达式会加大代码的 复杂度,让人很 难理解。所以我们有的时候需要在正则表达式内部添加注释。
通用模式(推荐学习:PHP编程从入门到精通)
定界符,通常使用 "/"做为定界符开始和结束,也可以使用"#"。
什么时候使用"#"呢?一般是在你的字符串中有 很多"/"字符的时候,因为正则的时候这种字符需要转义,比如uri。
使用"/"定界符的代码如下.$regex = '/^http:\/\/([\w.]+)\/([\w]+)\/([\w]+)\.html$/i';
$str = 'http://www.youku.com/show_page/id_ABCDEFG.html';
$matches = array();
if(preg_match($regex, $str, $matches)){
var_dump($matches);
}
echo "\n";
preg_match中的$matches[0]将包含与整个模式匹配的字符串。
使用"#"定界符的代码如下.这个时候对"/"就不转义!$regex = '#^http://([\w.]+)/([\w]+)/([\w]+)\.html$#i';
$str = 'http://www.youku.com/show_page/id_ABCDEFG.html';
$matches = array();
if(preg_match($regex, $str, $matches)){
var_dump($matches);
}
echo "\n";
正则表达式的定义可以这样简单概括:“正则表达式描述了一种字符串匹配的模式,通过这个模式在特定的函数中对字符串进行匹配、查找、替换及分割等操作。作为一个匹配模板,是由原子、特有功能字符及模式修正符三部分组成的文字模式。”
php认识正则吗,php正则表达式有什么用相关推荐
- python正则库_python 正则表达式第三方库 re的基本使用
re模块简介: 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配,而re模块就是python中实现正则的模块 正则表达式简介: 非打印字符: 非打印字符也可以是正则表达 ...
- 编译原理-正则文法与正则表达式的相互转化
正则文法与正则表达式的相互转化 前言 一.正则文法 1.定义 2.例子 二.正则表达式 1.定义 2.例子 三.转换规则 1.正则文法转换为正则表达式 2.正则表达式转换为正则文法 四.转换例子 1. ...
- 编译原理--正则文法与正则表达式
对任何正则文法G,存在定义同一语言的正则表达式r 对任何正则表达式r,存在生成同一语言的正则文法G 正则文法到正则表达式的转换 将正则文法中的每个非终结符表示成关于它的一个正则表达式方程,获得一个联立 ...
- java 正则_认识正则表达式(Java语言基础)
正则表达式: 1. 字符串 2. 表示正确规则的式子 我们做一个SimpleDateFormat例子 首先新建一个工程,创建一个类 我们在获取当前系统时间的时候,我们可以按照下面的方式输出. 会发现输 ...
- python正则匹配_python 正则表达式详解
正则表达式是一个很强大的字符串处理工具,几乎任何关于字符串的操作都可以使用正则表达式来完成,作为一个爬虫工作者,每天和字符串打交道,正则表达式更是不可或缺的技能,正则表达式的在不同的语言中使用方式可能 ...
- java 正则 懒惰_正则表达式懒惰模式
在写BLOG练习程序的时候,考虑到用BBS直接输入可能会更加简洁些.但是如何转换又成了一个问题. 在群里问了问朋友,一致认同使用正则表达式最好.于是又翻起了那篇我觉得很好的正则表达式三十分钟入门,看了 ...
- php 正则 菜鸟,PHP正则表达式基础入门
思维导图 介绍 正则表达式,大家在开发中应该是经常用到,现在很多开发语言都有正则表达式的应用,比如JavaScript.Java..Net.PHP 等,我今天就把我对正则表达式的理解跟大家唠唠,不当之 ...
- 正则环视 php,正则表达式基本知识(php)
这里的知识点基本上是<正则指引>的读书笔记,只是每个知识点的示例代码用php来实现. 1. 字符组 字符组(Character Class)就是一组字符,在正则表达式中,它表示" ...
- python正则_python的正则表达式
上次小编写了正则表达式的用法,今天就小编就讲讲正则表达式再python中的应用,在python中想使用正则表达式就需要导入re模块. 接下来小编将先介绍re模块中几个常见的函数 findall: re ...
最新文章
- 华为atn980传输设备_在头发丝中实现每秒1000张高清DVD传输
- 拿来就能用!如何用 AI 算法提高安全运维效率?
- websocket连接mqtt实现发布及订阅主题
- mysql类型_MySQL的数据类型
- 【双百解法】2058. 找出临界点之间的最小和最大距离——Leecode周赛系列
- html 给 ol添加abc,英语abc怎么写
- java基础-BigDecimal类常用方法介绍
- python读取文档中有很多指标的数据 写成矩阵_图像处理与特征提取 —— 从 MATLAB 到 Python(一)图像、矩阵与数据的读写...
- 一款发帖软件的逆向分析(C#)
- 数据结构常见面试题,一网打尽!
- 常用数字音频功放芯片-音频放大器
- 使用python在已存在的excel数据表中的特定位置写入数据
- 程序员转型IT讲师的优势
- 触控板用不了,解决办法:
- Unity VR(PicoVR)
- uni-app项目(首页)
- wxPython的基础教程
- 【​CES观察】我单反相机都带了,你就给我看这个?
- Android基于Poi生成Word
- [LeetCode-Algorithms-91] Decode Ways (2017.10.19-WEEK7)
热门文章
- php cms使用视频教程,PHPCMS v9视频模块使用教程二
- ebm风扇选型手册_德国EBM离心风扇的八大结构组成你知道吗?
- 信息采集软件测试,Telegraf采集CPU数据,测试派详解
- ext3分区修复linux,linux – 如何从损坏的ext3分区恢复数据?
- python自定义包_详解python自定义模块、包
- prooerties mysql_MySQL_第八章
- Variable W already exists, disallowed. Did you mean to set reuse=True or reuse=tf.AUTO_REUSE……
- 服务器tcp连接占满_漫画 | 一台Linux服务器最多能支撑多少个TCP连接?
- oracle 初始化出错,OCCI编程时,初始化Date种出错
- java listfiles 使用_Java中list()和listFiles()方法之间的区别