php学习随记3
<? php #正則表達式
#就是一种描写叙述字符串结构的语法规则
#是一个特定的格式化模式 #1. 行定位符
/*
1) ^行首
2)$行尾
tm eqaul Tomorrow Moon
^tm 匹配
tm$不匹配
tm屁匹配任何位置
*/ #2. 单词界定符
/*
1)b \btm\b表示要查找一个完整的单词
2)B \Btm|b正好相反 表示查找的不是一个完整的单词
*/ #3. 字符类
/*
1)正則表達式是区分大写和小写的假设要想忽略大写和小写能够使用[]
可是一个[]仅仅能包含一个字符 比如tm的匹配要写成[tT][mM]
2)POSIX提前定义的字符类
[:digit:] [0-9]
[[:alnum:]] 字母数字集合
[[:alpha:]] 字母集合
[[:blank:]] 空格 水平制表
[[:xdigit:]] 十六进制数字
[[:punct:]] 特殊字符 !@#$%^&*?
[[:print:]] 全部可打印字符(包含空白字符)
[[:space:]] 空包字符 空格 换行 换页 回车 水平制表
[[:graph:]] 全部可打印字符(不包含空白字符)
[[:upper:]] 大写字母
[[:lower:]] 小写字母
[[:cntrl:]] 控制字符
*/ #4 选择字符 |
/*
能够理解为或的意思
*/ #5 连接字符 _
/*
[a,b,d...,z] ==> [a-z]
*/ # 排除字符 [^]
# [^a-zA-Z] 除了字符以外的 #6 限定符 (? *+{n,m})
/*
? 匹配前面的字符零次或者一次 colo? r能够匹配colour color
+ 匹配前面的字符一次或多次 go+gle能够匹配google到go...ogle
* 匹配前面的字符零次或多次 go*gle能够匹配ggle到go...ogle
{n} 匹配前面的字符n次
{n,} 匹配前面的字符至少n次
{n,m} 匹配前面的字符至少n次 至多m次 */ #7 点号字符
/*
能够表示出了换行符以外的随意一个字符
比方匹配首字母是S尾字母是T的三个字母的单词
^s.t$
*/ #8 转义字符
/*
同c java中的一致
*/ #9 反斜线(\)
/*
反斜线定义了一些不可显示 比方 \b 退格键 \n换行等等
*/ #10 小括号
/*
改变限定符的作用域
*/ #11 反向引用
/*
反向引用就是一考表达式的记忆功能匹配连续出现的字符串或字母
如匹配连续两个it 首先将单词it作为分组 然后在后面加上"\1"就可以 格式为:
(it)\1 //当中这个1代表的分组的序号 由于可能有多个分组
*/ #12 模式修饰符
/*
i 忽略大写和小写
m 多文本形式 字串中含有多个换行符 影响^$的匹配
s 单文本形式 .能够匹配$^
x 忽略空白字符
修饰符有三种格式:(?i)tm(?-i),(? i:tm),/tm/i
*/ #php中POSIX扩展正則表達式函数
/*
bool erge/eregi(string pattern, string string[, array regs])
在string中查找pattern,假设存在第三个參数。则会将匹配的字串划分
存到数组中去 第一个区分大写和小写 第二个不区分
*/ /*
bool ereg_replace/eregi_replace(string pattern, string replacement, string string)
在字符串string中匹配pattern,假设成果使用replacement替换 而且返回替换后的string
第一个区分大写和小写 另外一种不
*/ /*
array split/split(string pattern, string string[, int limit])
使用pattern切割字符串string 存在參数limit的话就是限制切割的个数
*/ #PCER兼容正則表達式函数
/*
array preg_grep(string pattern, array input)函数
使用input一一匹配表达式pattern 最后返回全部
由全部匹配成功的元素组成的数组
*/
$input = array('helloJimbo','nihaoaJinbo');
$pattern = '/J...o/';
$arr = preg_grep($pattern, $input);
//echo sizeof($arr);
for($i = 0; $i < sizeof($arr); $i++){
echo "$arr[$i]<br>";
} /*
int preg_match/preg_match_all(string pattern, string subject[, array matches])
在字符串subject中匹配表达式pattern
函数返回匹配次数。假设有matches。
*/ /*
string preg_quote(string str[, string delimiter])
将str里面的全部特殊字符自己主动转义
假设有delimiter參数 则delimiter里面的字符也被转义
*/ /*
preg_replace(mixed pattern, mixed replacement, mixed subject[, int limit])
在subject中匹配pattern。匹配到替换成replacement,有limit限制次数
preg_replace_callback(mixed pattern, callback callback, mixed subject[, int limit])
功能同样 仅仅只是replacement换成回调函数 能够更灵活 */ /*
array preg_split(string pattern, string subject[, int limit])
切割字符串
*/ ? >
php学习随记3的更多相关文章
- Deep Learning学习随记(二)Vectorized、PCA和Whitening
接着上次的记,前面看了稀疏自编码.按照讲义,接下来是Vectorized, 翻译成向量化?暂且这么认为吧. Vectorized: 这节是老师教我们编程技巧了,这个向量化的意思说白了就是利用已经被优化 ...
- Spring Boot学习随记
由于早年在管理领域耕耘了一段时间,完美错过了Spring的活跃期, 多少对这个经典的技术带有一种遗憾的心态在里面的, 从下面的我的生涯手绘图中大概可以看出来我的经历. 最近由于新介入到了工业数字化领域 ...
- Fiddler的一系列学习瞎记(没有章法的笔记)
前言: 工作上要接触很多移动设备,进行测试,所以抓包软件不能少,但是看你习惯,你要是说我喜欢charles,也可以,毕竟我也买不起苹果电脑,就不拿charles装在windows上了,还是乖乖的Fid ...
- Entity Framework学习笔记——记一个错误解决方式及思路
继续之前设定的学习目标前,先来一篇小小的外篇.按照第一篇里的配置方式配置好的工程前两天还能正常工作,昨天却突然无法通过Add-Migration命令进行数据库的升级.错误信息如下: System.Da ...
- Maven学习随记
慕课网视频教程:http://www.imooc.com/learn/443 ====Maven是什么 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建.报告和文档的软件 ...
- MVC学习系列——记一次失败面试后,感想。
在此写博客之际,热烈庆祝母校苏州科技学院,正式改名为苏州科技大学. 一晃眼,从自己投身IT行业已经两年有余,期间经历了结婚.买房等人生大事,非常感谢我的老婆,谢谢她这么爱我,嫁给我这个码农,呵呵... ...
- 学习笔记-记ActiveMQ学习摘录与心得(二)
上个周末被我玩过去了,罪过罪过,现在又是一个工作日过去啦,居然有些烦躁,估计这几天看的东西有点杂,晚上坐下来把自己首要工作任务总结总结.上篇学习博客讲了ActiveMQ的特性及安装部署,下面先把我以前 ...
- 学习笔记-记ActiveMQ学习摘录与心得(一)
这两天在看开源的MQ技术,趁着晚上安静,把这两天学的东西摘录下.在公司学东西效率真心捉鸡,心里总觉得别扭,拿了公司的钱不干活还在那学习,表示心情不淡定,效率不行啊...晚上时间是我的,下班还是蛮开心的 ...
- Deep Learning 学习随记(八)CNN(Convolutional neural network)理解
前面Andrew Ng的讲义基本看完了.Andrew讲的真是通俗易懂,只是不过瘾啊,讲的太少了.趁着看完那章convolution and pooling, 自己又去翻了翻CNN的相关东西. 当时看讲 ...
- Deep Learning 学习随记(七)Convolution and Pooling --卷积和池化
图像大小与参数个数: 前面几章都是针对小图像块处理的,这一章则是针对大图像进行处理的.两者在这的区别还是很明显的,小图像(如8*8,MINIST的28*28)可以采用全连接的方式(即输入层和隐含层直接 ...
随机推荐
- javaweb 课程设计编码和设计文档
企业办公软件设计文档 1引言 1.1编写目的 OA办公自动化系统详细设计是设计的第三个阶段,这个阶段的主要任务是在OA办公自动化系统概要设计书基础上,对概要设计中产生的功能模块进行过程描述,设计功能模 ...
- git上
## 建立本地版本库 ## 本地版本库与远程关联 ## 修改文件并提交 ## 创建分支,修改文件合并至master 1. git的由来 linux系统是很多开发者贡献代码不断完善的,linux的创始人 ...
- python 线程池和锁
一.死锁现象与递归锁 锁:Lock线程安全,多线程操作时,内部会让所有线程排队处理.如:list/dict/Queue 线程不安全 + 人 => 排队处理. import thre ...
- C#之密封类(详解)
10.3 密封类与密封方法 如果所有的类都可以被继承,那么很容易导致继承的滥用,进而使类的层次结构体系变得十分复杂,这样使得开发人员对类的理解和使用变得十分困难,为了避免滥用继承,C#中提出了密封类 ...
- lsit集合去重复 顶级表达式
updateList = updateList.Where((x, i) => updateList.FindIndex(z => z.ID == x.ID) == i).ToList() ...
- 使用TortoiseSVN碰到的几个问题(1)-导入,提交,更新
1)导入数据到版本库 第一种情况,使用Import导入命令的时候 不能选择包含哪些指定文件或目录, 导入的文件夹不能变成工作副本,(如果你在“工作副本”目录下执行导入命令是不起作用的.)必须通过签出操 ...
- 【Oracle】客户端监听配置
首先找到oracle软件安装的目录,找到\product\11.2.0\client_1\network\admin,打开tnsnames.ora文件: 粘贴一下内容: LISTENER= (DESC ...
- 人脸检测的harr检测函数
眼球追踪需要对人脸进行识别,然后再对人眼进行识别,判断人眼张合度,进而判断疲劳... 解析:人脸检测的harr检测函数使用方法 代码理解: 利用训练集,检测出脸部,画出框 void CAviTestD ...
- luoguP3979 遥远的国度 LCT+multiset维护子树信息
Code: #include<bits/stdc++.h> #define maxn 150000 #define ll long long #define inf 21474836470 ...
- 【剑指Offer】22、从上往下打印二叉树
题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印. 解题思路: 本题实际上就是二叉树的层次遍历,深度遍历可以用递归或者栈,而层次遍历很明显应该使用队列.同样我们可以通过 ...