9.1.1 选择PHP正则表达式的处理函数库

2016-12-19  本文已影响191人  曹渊说创业

9.1.1 选择PHP正则表达式的处理函数库

正则表达式简介:
正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找及替换操作。到目前为止,我们前面所用过的精确(文本)匹配也是一种正则表达式。
在PHP中,正则表达式一般是由正规字符和一些特殊字符(类似于通配符)联合构成的一个文本模式的程序性描述。
PHP中,正则表达式有三个作用:
匹配,也常常用于从字符串中析取信息。
用新文本代替匹配文本。
将一个字符串拆分为一组更小的信息块。
一个正则表达式中至少包含一个原子。

在PHP中有两套正则表达式函数库,两者功能相似,只是执行效率略有差异:
一套是由PCRE(Perl Compatible Regular Expression)库提供的。使用“preg_”为前缀命名的函数;
一套由POSIX(Portable Operating System Interface of Unix )扩展提供的。使用以“ereg_”为前缀命名的函数;
PCRE来源于Perl语言,而Perl是对字符串操作功能最强大的语言之一,PHP的最初版本就是由Perl开发的产品。
PCRE语法支持更多特性,比POSIX语法更强大。
举例:想一想这两个正则表达式做什么用?
/-?\d+$|-?0[xX][\da-fA-F]+$/
/^[0-9a-zA-Z_-]+@[0-9a-zA-Z_-]+(.[0-9a-zA-Z_-]+){0,3}$/

test.php

<?php
$text = <<<st

历法扩展集包括了一系列用于在不同历法间进行转换的函数,它是以Julian Day计数为中介或标准来进行的。Julian Day计数是以公元前的4713年的1月1日为起点的一http://www.lampbrother.net种计数法。为了在不同历法间进行转换,你首先要转换成Julian Day计数,然后再转换为你所需要的历法。Julian Day计数和Julian历法http://www.baidu.com是非常不同的!Julian Day计数的更多信息可以参考? http://www.google.com,历法系统的更多信息可以参考? http://www.brophp.org本页中的引用包括在相应的文章中。 

st;

//url  
$str = "/http\:\/\/www(.*?)(org|com|net)/i"; 
/*
 * 1.  正则表达式,就是一个匹配的"模式"
 * 2.  正则表达式本身, 就是一个字符串(中有一些语法规则, 特殊字符)
 *
 *
 *  正则表达式这个字符串, 一定要在对应的函数中使用, (分割的函数,替换的函数 )
 */
上一篇下一篇

猜你喜欢

热点阅读