收集了10个php正则表达式实例,希望对大家学习正则有所帮助。

1. 根据购物车中的商品Item ID,准确判断客人的原装机型号。

复制代码 代码如下:

$title = "Replacement Canon BP-511 Camcorder Battery [Item ID:3-236-523]";

if( eregi("([Item ID:)([0-9]+)-([0-9]+)-([0-9]+)(])",$title,$arr) ){

echo "

";

print_r($arr);

echo "

";

}

?>

2. 匹配日期

复制代码 代码如下:

// 分隔符可以是斜线,点,或横线

$date = "04/30/1973";

list($month, $day, $year) = split ('[/.-]', $date); // 漏洞: 04/30-1973也能匹配得上

echo "Month: $month; Day: $day; Year: $year
n";

?>

3. 搜索单词 web

复制代码 代码如下:

if (preg_match ("/bwebb/i", "PHP is the website scripting language of choice.")) {

print "A match was found.";

} else {

print "A match was not found.";

}

?>

4. 从url 中取出域名

复制代码 代码如下:

// 从 URL 中取得主机名

preg_match("/^(http://)?([^/]+)/i",

"http://www.php.net/index.html", $matches);

$host = $matches[2];

// 从主机名中取得后面两段

preg_match("/[^./]+.[^./]+$/", $host, $matches);

echo "domain name is: {$matches[0]}n";

// 本例执行后将输出: domain name is: php.net

?>

5. 你知道下面的程序输出什么?

复制代码 代码如下:

preg_match_all ("|]+>(.*)[^>]+>|U",

"example:

this is a test

",

$out, PREG_PATTERN_ORDER); // 注意PREG_PATTERN_ORDER和PREG_SET_ORDER的区别

print $out[0][0].", ".$out[0][1]."n";

print $out[1][0].", ".$out[1][1]."n";

echo "

";

print_r($out);

?>

6. 功能: 转义正则表达式字符

复制代码 代码如下:

$keywords = "$40 for a g3/400";

$keywords = preg_quote ($keywords, "/");

echo $keywords; // returns $40 for a g3/400

?>

7. 看人家如何用 preg_quote() 函数实现高亮显示

复制代码 代码如下:

// 本例中,preg_quote($word) 用来使星号不在正则表达式中

// 具有特殊含义。

$textbody = "This book is *very* difficult to find.";

$word = "*very*";

$textbody = preg_replace ("/".preg_quote($word)."/",

"".$word."",

$textbody);

echo $textbody;

?>

8. 用回调函数执行正则表达式的搜索和替换

复制代码 代码如下:

// 此文本是用于 2002 年的,

// 现在想使其能用于 2003 年

$text = "April fools day is 04/01/2002n";

$text.= "Last christmas was 12/24/2001n";

// 回调函数

function next_year($matches) {

// 通常:$matches[0] 是完整的匹配项

// $matches[1] 是第一个括号中的子模式的匹配项

// 以此类推

return $matches[1].($matches[2]+1);

}

echo preg_replace_callback(

"|(d{2}/d{2}/)(d{4})|",

"next_year",

$text);

// 结果为:

// April fools day is 04/01/2003

// Last christmas was 12/24/2002

?>

9. 在 preg_replace() 中使用索引数组

复制代码 代码如下:

$string = "The quick brown fox jumped over the lazy dog.";

$patterns[0] = "/quick/";

$patterns[1] = "/brown/";

$patterns[2] = "/fox/";

$replacements[2] = "bear";

$replacements[1] = "black";

$replacements[0] = "slow";

print preg_replace($patterns, $replacements, $string);

/* Output

======

The bear black slow jumped over the lazy dog.

*/

/* By ksorting patterns and replacements,

we should get what we wanted. */

ksort($patterns);

ksort($replacements);

print preg_replace($patterns, $replacements, $string);

/* Output

======

The slow black bear jumped over the lazy dog.

*/

?>

10. 将 HTML 转换成文本

复制代码 代码如下:

// $document 应包含一个 HTML 文档。

// 本例将去掉 HTML 标记,# 代码

// 和空白字符。还会将一些通用的

// HTML 实体转换成相应的文本。

$search = array ("''si", // 去掉 #

"']*?>'si", // 去掉 HTML 标记

"'([rn])[s]+'", // 去掉空白字符

"'&(quot|#34);'i", // 替换 HTML 实体

"'&(amp|#38);'i",

"'&(lt|#60);'i",

"'&(gt|#62);'i",

"'&(nbsp|#160);'i",

"'&(iexcl|#161);'i",

"'&(cent|#162);'i",

"'&(pound|#163);'i",

"'&(copy|#169);'i",

"'(d+);'e"); // 作为 PHP 代码运行

$replace = array ("",

"",

"1",

""",

"&",

"

">",

" ",

chr(161),

chr(162),

chr(163),

chr(169),

"chr(1)");

$text = preg_replace ($search, $replace, $document);

?>

php正则表达式经典实例,php正则表达式学习示例相关推荐

  1. 《正则表达式经典实例(第2版)》——2.19 在替代文本中添加字面文本

    本节书摘来自异步社区<正则表达式经典实例(第2版)>一书中的第2章,第2.19节,作者: [美]Jan Goyvaerts , Steven Levithan著,更多章节内容可以访问云栖社 ...

  2. 《正则表达式经典实例(第2版)》——2.6 匹配完整单词

    本节书摘来自异步社区<正则表达式经典实例(第2版)>一书中的第2章,第2.6节,作者: [美]Jan Goyvaerts , Steven Levithan著,更多章节内容可以访问云栖社区 ...

  3. 《正则表达式经典实例(第2版)》——2.18 向正则表达式中添加注释

    本节书摘来自异步社区<正则表达式经典实例(第2版)>一书中的第2章,第2.18节,作者: [美]Jan Goyvaerts , Steven Levithan著,更多章节内容可以访问云栖社 ...

  4. php正则表达式经典实例,php半小时精通正则表达式

    php半小时精通正则表达式 更新时间:2006年11月26日 00:00:00   作者: 想必很多人都对正则表达式都头疼.今天,我以我的认识,加上网上一些文章,希望用常人都可以理解的表达方式.来和大 ...

  5. python正则表达式使用实例_正则表达式的基础知识,以及Python爬虫中的使用方法...

    一.正则表达式 实际上爬虫一共就四个主要步骤: 明确目标(要知道你准备在哪个范围或者网站去搜索) 爬(将所有的网站内容全部爬下来) 取(去掉对我们没有用处的数据) 处理数据 我们在第上一篇文章中介绍的 ...

  6. c语言计算器实训任务案例,C/C++经典实例之模拟计算器示例代码

    前言 本文主要给大家介绍了关于利用C/C++如何实现模拟计算器的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. Problem Description 简单计算器模拟:输入 ...

  7. JMeter学习-009-JMeter 后置处理器实例之 - 正则表达式提取器(二)多参数获取

    前文简述了通过后置处理器 - 正则表达式提取器 获取 HTTP请求 响应结果中的特定数据,未看过的亲,敬请参阅 JMeter学习-008-JMeter 后置处理器实例之 - 正则表达式提取器(一). ...

  8. python爬虫正则表达式实例-python爬虫学习三:python正则表达式

    python爬虫学习三:python正则表达式 1.正则表达式基础 a.正则表达式的大致匹配过程: 1.依次拿出表达式和文本中的字符比较 2.如果每一个字符都能匹配,则匹配成功:一旦有匹配不成功的字符 ...

  9. python正则表达式案例_Python正则表达式使用经典实例

    regex=ur"" #正则表达式 match = re.search(regex, subject) if match: # match start: match.start() ...

最新文章

  1. opencv 最大连通域_opencv 查找连通区域 最大面积实例
  2. c语言中图像处理相关函数,C语言图像处理函数大全
  3. YOLO利用kmeans聚类算法计算anchors box(原理介绍及代码)
  4. Python对文本文件的简单操作(一)
  5. Fullpage:基础学习
  6. SLAM_SLAM中一般是如何求解相机的运动的?
  7. Symbols andSymbol Tables
  8. 页面提交时,显示“提交中”等待效果
  9. 基于[三星6818]I2C驱动开发的0.96寸oled屏
  10. 删除计算机用户时拒绝访问权限,如果打印机拒绝访问并且无法删除设备怎么办...
  11. java中的java.lang.RuntimeException异常怎么解决?
  12. 电商APP的流量及用户运营分析
  13. 计算机考研专业课科目834,2018考研华中科技大学834计算机专业基础综合考试大纲...
  14. 阿里java开发规范学习笔记 (V1.5华山版)
  15. (转)coures包下载和安装 可解决报错ImportError: No module named '_curses'
  16. 常用字符串API实现(笔试会考)
  17. 好心情:这4种营养素能增强抗抑郁药的疗效!不知道的人亏大了
  18. 公钥密码的三大数学问题
  19. matlab有哪些分类器,常用分类器汇总matlab
  20. mysql @的使用

热门文章

  1. java键盘录入一个 字符串,如果字符串中包含(TMD),则使用***替换
  2. 对捷某特app的逆向
  3. 实现用户登录--微信扫码、账号密码
  4. wordpress密码的破解
  5. 小学美术计算机教案,小学美术《电脑美术》的教案
  6. FIFO的FPGA实现
  7. 直播实录|如何使用百度大脑EasyDL构建互联网内容安全方案?
  8. 大页内存(HugePages)在通用程序优化中的应用
  9. 华尔街之狼-贝尔福特
  10. 蓝桥杯比赛培训笔记(基于STCCT107D训练板)