正则表达式的应用
匹配、查找、分割、替换
对于普通字符串处理函数和正则表达式字符处理函数,使用的原则:
能用普通字符串处理函数处理的,就不要用正则表达式处理。

原因:
普通字符串处理函数:效率高。简单。
正则表达式处理函数:效率相对低。复杂。功能强大。

匹配、查找
strstr(string $haystack,string $needle)
功能:查找needle在haystack中出现后的字符串
参数:
haystack 元字符串
needle   查找的字符串
返回:出现后的字符串

strpos(string $haystack,string $needle)
功能:在haystack查找needle首次出现的位置
参数:
haystack 原字符串
needle   要查找的字符串
返回:位置

strrpos(string $haystack,string $needle)
功能:在haystack查找needle最后一次出现的位置
参数:
haystack 原字符串
needle   要查找的字符串
返回:位置

substr(string $str,int $start[,int length])
功能:字符串的截取
参数:
str 原字符串
start 截取的开始
length 截取的长度,默认截取到字符串尾
返回:截取后的字符串

preg_match_all(string $pattern,string $subject,array $match)
功能:正则匹配
参数:
pattern 正则
subject 要进行匹配的字符串
match   匹配的结果
返回:匹配到的次数

preg_match(string $pattern,string $subject,array $match)
功能:正则匹配
参数:
pattern  正则
subject 要进行匹配的字符串
match   匹配的结果,仅返回第一次匹配到的结果
返回:匹配到的次数。(0~1)

preg_grep(string $pattern,array $input)
功能:正则匹配
参数:
pattern  正则
input    要进行匹配的字符串数组。
返回:匹配的结果,返回格式:数组

分割
explode(string $delimiter,string $str[,int $limit])
功能:分割
参数:
delimiter 分割的标识字符串
str       要进行分割的字符串
limit     分割的次数
返回:分割好的字符串。格式:数组

preg_split(string $pattern,string $subject)
功能:字符串的分割
参数:
pattern 正则
subject 要进行分割的字符串
返回:被分割好的字符串

替换
str_replace(mixed $search,mixed $replace,mixed $str)
功能:在str字符串中查找search替换成replace
参数:
search 要查找的字符串
replace 要替换的字符串
str    原字符串
返回:替换后的字符串

preg_replace(string $pattern,string $replace,string $subject)
功能:正则替换
参数:
pattern 正则表达式
replace 要进行替换的字符串
subject 原字符串
返回:替换后的字符串

贪婪模式和非贪婪模式
贪婪模式
.* 
非贪婪模式
.*?

【正则】day02的更多相关文章

  1. scrapy初试水 day02(正则提取)

    1.处理方式 法一 通过HtmlXPathSelectorimport scrapyfrom scrapy.selector import HtmlXPathSelectorclass DmozSpi ...

  2. Javascript正则对象方法与字符串正则方法总结

    正则对象 var reg = new Regexp('abc','gi') var reg = /abc/ig 正则方法 test方法(测试某个字符串是否匹配) var str = 'abc123'; ...

  3. C#-正则,常用几种数据解析-端午快乐

    在等待几个小时就是端午节了,这里预祝各位节日快乐. 这里分享的是几个在C#中常用的正则解析数据写法,其实就是Regex类,至于正则的匹配格式,请仔细阅读正则的api文档,此处不具体说明,谢谢. 开始吧 ...

  4. Javascript 中 with 的替代方案和String 中的正则方法

    这几天在升级自己的MVVM 框架,遇到很多小问题,就在这里统一解决了. with 语法 在代码中,要执行这么一个函数 function computeExpression(exp, scope) { ...

  5. JavaScript与PHP中正则

    一.JavaScript 有个在线调试正则的工具,点击查看工具.下面的所有示例代码,都可以在codepen上查看到. 1.创建正则表达式 var re = /ab+c/; //方式一 正则表达式字面量 ...

  6. Java正则速成秘籍(一)之招式篇

    导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...

  7. Java正则速成秘籍(二)之心法篇

    导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...

  8. Java正则速成秘籍(三)之见招拆招篇

    导读 正则表达式是什么?有什么用? 正则表达式(Regular Expression)是一种文本规则,可以用来校验.查找.替换与规则匹配的文本. 又爱又恨的正则 正则表达式是一个强大的文本匹配工具,但 ...

  9. python浅谈正则的常用方法

    python浅谈正则的常用方法覆盖范围70%以上 上一次很多朋友写文字屏蔽说到要用正则表达,其实不是我不想用(我正则用得不是很多,看过我之前爬虫的都知道,我直接用BeautifulSoup的网页标签去 ...

随机推荐

  1. 《细说PHP》第四版 样章 第18章 数据库抽象层PDO 1

    现在,如果你已经能熟练地使用MySQL客户端软件来操作数据库中的数据,就可以开始学习如何使用PHP来显示和修改数据库中的数据了.PHP提供了标准的函数来操作数据库.在PHP 5以上的版本中可以使用My ...

  2. python之面向对象设计、编程

    面向对象 一.编程三个范式 1.面向过程编程 2.函数式编程 数学层面的函数 python中的函数编程 3.面向对象编程 二.面向对象设计 1.类:把一类事物共同的特征和共同的动作整合在一起就是类: ...

  3. JVM GC系列 — GC收集器

    一.前言 前文学习了各种GC回收算法,掌握了GC回收的原理,但是真正的GC实现却尤为复杂,本篇文章将主要介绍各种GC收集器. 目前主流的HotSpot VM支持多种虚拟机,这些虚拟机也体现了GC的发展 ...

  4. oracle学习笔记(十) 查询练习(一)

    查询练习一 表创建 create table employee as select * from soctt.emp ; --记得授权 sysdba用户登录 grant select on scott ...

  5. WPF自定义控件的制作

    因为有时候需要定制化的控件,需要多个控件的组合及复杂功能的集成,这样可以考虑自定义用户控件.下面分享一个简单的数值增减功能的自定义控件作为说明. 效果图如下: 1.创建自定义用户控件(添加->新 ...

  6. PHP+Mysql查询上一篇和下一篇文章实例

    简单的PHP+Mysql查询上一篇和下一篇文章实例,并输出上一篇和下一篇文章的标题和链接,适合新手学习 获取当前浏览文章id: $id = isset($_GET['id']) > 0 ? in ...

  7. mysql - 锁及事务的认识

    mysql事务特性:一致性原子性隔离性持久性 //mysql 事务隔离级别 读未提交 读未提交的数据 读已提交 读已提交的数据 串行序列化 一个事务完成了再执行另一个事务 可重复读(数据库默认) 就算 ...

  8. 面试官之问:知道你的接口“QPS”是多少吗?

    前言: 原作:孤独烟.因修改不当之处欢迎指出! 大家好,我是小架架. 今天一大早就起来水文章了.这篇文章我个人感觉虽然含金量不是特别大,估计大家大概5分钟左右就能看完!到底是因为什么呢,因为平时干货文 ...

  9. 从高版本的 SQL Server 向低版本的 SQL Server 转移数据

    1.在源数据库上右键任务,选择生成脚本- 2.在生成脚本的高级选项中,根据数据库的内容,选择相应的选项,主要是红框圈出的部分,最后选择仅架构(若数据库的数据量不大,可以直接导出 架构和数据,在新数据库 ...

  10. 什么是POSP?系统逻辑是什么?pos收单必读

    POSProxy,POS前置系统.主要用于管理前端的POS机具和交易的转发,具体功能有:   1. POS机具的密钥及下载管理:   2. 交易的合法检测和过滤:   3. 交易监控和分流:   4. ...