仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 776|回复: 18
打印 上一主题 下一主题

[学习教程] PHP网页编程之PHP下经常使用正则表达式收拾整顿

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:41:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
培训的第三阶段,开始接触MYSQL,设计数据库,学习PHP如何去连接MYSQL数据库。对于MYSQL,我并不陌生,因为学校开设了Linux系统的课程,对于数据库的操作。   --------------------------------------------------------- 正则保藏

手机号码:
$mode = "/^1[358]\d{9}/";

邮箱地址:
$mode = "/^[a-z][-_\.]?[a-z\d]*@[a-z0-9]+[\.][a-z]{2,4}/i";

---------------------------------------------------------- 正则基本

$mode = "/^1[358]\d{9}/i";
婚配模块必需以 / / 入手下手和停止,第二个 / 后可以加形式修改符

原子
①a-z A-Z _ 0-9 //最多见的字符
②(abc) //用圆括号括起来起来的单位符号
③[abcs] [^abd] //用方括号括起来的原子表,
原子表中的^代表扫除或相反内容

\d 包括一切数字[0-9]
\D 除一切数字外[^0-9]
\w 包括一切英文字符[a-zA-Z_0-9]
\W 除一切英文字符外[^a-zA-Z_0-9]
\s 包括空白区域如回车、换行、分页等 [\f\n\r]

元字符
* 婚配前一个内容的0次1次或屡次
+ 1次或屡次
? 0次或1次
. 代表恣意一个字符(除回车换行)
相当与php的 (“或”的意思)
^ 强迫婚配字符串首部内容
$ 强迫婚配字符串尾部内容
[^abc] 婚配除a或b或c以外的内容
\b 婚配单词界限,界限可所以空格或特别符号
\B 婚配除带单词界限之外的内容
{m} 婚配前一个内容的反复次数为M次
{m,} 婚配前一个内容的反复次数大于等于M次
{m,n} 婚配前一个内容的反复次数M次到N次
( ) 全体婚配,并放入内存,可以使用\\1 或 \\2 …顺次获得

优先级:顺次下降
( ) 圆括号由于是内存处置所以最高
* ? + { } 反复婚配内容其次
^ $ \b 界限处置第三
前提处置第四
最初依照运算按次盘算婚配

经常使用修改符: $mode = "/正则/U";
i 正则内容在婚配时分不辨别巨细写(默许是辨别的)
m 在婚配首内容或尾内容时分采取多行辨认婚配
S 将回车转化为空格
x 疏忽正则中的空白
A 强迫从头入手下手婚配
D 强迫$婚配尾部无任何内容 \n
U 制止贪心婚配,只跟踪到比来的一个婚配符并停止,
经常使用在收集法式上的正则表达式

使用
preg_match_all ( string pattern, string subject, array matches [, int flags] )
截取对照具体的内容,收集网页,剖析文本
preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )
preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )
提醒 1、交换内容可所以一个正则也能够是数组正则
2、交换内容可以经由过程修改符e来处理交换履行内容
preg_split ( string pattern, string subject [, int limit [, int flags]] )
经由过程正则表达式来切割相干内容,相似之前学过的explode切割函数,但explode
只能依照一种体例切割有局限性。
------------------------------------------------- 调试代码
[code]
<?php
$mode = "/^[a-z][-_\.]?[a-z\d]*@[a-z0-9]+[\.][a-z]{2,4}/i";
$str = "a12345@jb51.net";
echo $str.'<hr>';
if(preg_match($mode, $str, $arr)){
echo 'succeed -- <font color=red>'.$arr[0];
}else{
echo 'failed';
}
?>
[code]到现在,对排版还是不很熟练,经常会排不好。
愤怒的大鸟 该用户已被删除
沙发
发表于 2015-2-4 06:04:15 | 只看该作者
当然这种网站的会员费就几十块钱。
山那边是海 该用户已被删除
板凳
发表于 2015-2-5 09:21:22 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
老尸 该用户已被删除
地板
发表于 2015-2-6 00:08:29 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
第二个灵魂 该用户已被删除
5#
发表于 2015-2-6 07:17:26 | 只看该作者
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
金色的骷髅 该用户已被删除
6#
发表于 2015-2-15 14:15:12 | 只看该作者
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
若天明 该用户已被删除
7#
发表于 2015-2-26 14:34:03 | 只看该作者
做为1门年轻的语言,php一直很努力。
蒙在股里 该用户已被删除
8#
发表于 2015-3-1 23:46:56 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
兰色精灵 该用户已被删除
9#
发表于 2015-3-7 10:21:37 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
精灵巫婆 该用户已被删除
10#
发表于 2015-3-14 20:17:32 | 只看该作者
实践是检验自己会不会的真理。
深爱那片海 该用户已被删除
11#
发表于 2015-3-21 14:03:52 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
admin 该用户已被删除
12#
发表于 2015-3-24 03:15:33 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
不帅 该用户已被删除
13#
发表于 2015-3-24 16:49:13 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
变相怪杰 该用户已被删除
14#
发表于 2015-3-26 18:45:41 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
乐观 该用户已被删除
15#
发表于 2015-3-27 21:11:10 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
16#
发表于 2015-4-6 13:16:02 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
爱飞 该用户已被删除
17#
发表于 2015-4-17 15:54:51 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
再现理想 该用户已被删除
18#
发表于 2015-4-19 10:25:57 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
小魔女 该用户已被删除
19#
发表于 2015-4-24 00:42:44 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 01:46

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表