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:]]  特殊字符 [email protected]#$%^&*?
		[[: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])
	切割字符串
    */

?

>
时间: 2024-10-29 19:06:37

php学习随记3的相关文章

CCNA学习必记

CCNA学习必记 --百家菜 在学习谢希仁的<计算机网络>过称中,发现有一些很重要但是书本上没有点破的知识点,或许在新的版本内容中会不断更新,但无论如何,我们也可以时常看看这一些知识点,加强记忆.在之后的不断学习当中,博主也会不定期添加一些其他-自认为对新手有用的内容. 1. 在学习划分子网那一块,可能大家很容易忽略启用0子网:(启用命令 ip subnet-zero) 如果你给路由接口配置地址192.168.10.6 255.255.255.248,并出现如下错误消息: "Bad

jqgrid学习琐记---shrinkToFit--特别的是

  <body>   <div style="margin:30px;">   <table id="list4"></table>   <div id="pager5"></div>   </div> <br /> <a href="#" id="a1">Get data from selected

hibernate学习随记

hibernate学习随记: 一:hibernate的核心类和接口 ①  Configuration 类 它的用处是: 读取hibernate.cfg.xml 管理对象关系映射文件 <mapping resource=””> 加载hibernate 的驱动,url ,用户.. 管理hibernate配置信息 ②  hibernate.cfg.xml ③  对象关系映射文件 ④  SessionFactory (会话工厂) 可以缓存sql语句和数据(称为session级缓存)!! 是一个重量级的

web 学习随记(1)

2020 - 01 -13 学习Springboot时的随记 幂等 参考文章:聊聊幂等 form-data 和 form-url-encoded该用哪种? 如果不是要传文件就用form-url-encoded 参考文章:application-x-www-form-urlencoded-or-multipart-form-data text/html 我一直以为这是text或者html的意思,后来发现原来它代表它是text格式,然后希望被解析成一个html,通常会在Request的Accept或

Spring Boot 学习随记

微架构的思想在各大互联网公司越来越普及,特此记录Spring Boot的一些细节问题! 网上spring-boot的教程一堆一堆,就没有必要再详细记录了 1:建议通过Idea 来创建spring-boot + maven 项目 2:spring-boot 默认可以加载的配置文件有两种 1 当前目录下 2 config/目录下 目录结构大概是这个样子 demo(your project name) -src -mian -test -config -application.properties 这

学习网页记单词

website   网站 static  web  静态网页 dynamic web 动态网页 local website 远程站点 root folder 根目录 designer  设计模式 title  标题 index   索引 学习中....

C语言学习随记

20150121 在初学C语言时,可能会遇到有些问题理解不透,或者表达方式与以往数学学习中不同(如运算符等),这就要求不气馁,不明白的地方多问多想,鼓足勇气进行学习,待学完后面的知识,前面的问题也就迎刃而解了. 还要记住“千金难买回头看”,就是说,学习后面的知识,不要忘了回头弄清遗留下的问题和加深理解前面的知识,这是非常重要的.学习C语言就是要经过几个反复,才能前后贯穿,积累应该掌握的C知识.

c语言一个例子对比php学习随记

今天开始学写一些简单的C例子,发现很多和PHP不一样的地方,做个笔记. #include <stdio.h> int main(void) { int a,b; printf("请输入整数a"); //这里是用双引号,不能用单引号,PHP类似的地方可以用单引号,这里需注意 scanf("%d",&a); //获取用户输入值存入a printf("请输入整数b"); scanf("%d",&b);//

Storm入门学习随记

推荐慕课网视频:http://www.imooc.com/video/10055 ====Storm的起源. Storm是开源的.分布式.流式计算系统 什么是分布式呢?就是将一个任务拆解给多个计算机去执行,让许多机器共通完成同一个任务, 把这个多机的细节给屏蔽,对外提供同一个接口.同一个服务,这样的系统就是分布式系统. 在多年以前并没有非常范用的分布式系统,即使存在,也都是限定在指定的领域, 当然,也有人尝试从中提取出共通的部分,发明一个通用的分布式系统,但是都没有很好的结果. 后来,Googl

Tableau10.0学习随记-分组问题

1.根据官网的练习视频,分组时可多选列,之后使用回形针按钮创建分组,并重新命名即可,截图如下: 2.但在Tableau10中打开练习工作簿练习时,并没有直接显示分组后结果,仅仅是创建了分组的纬度,结果如下: 3.使用练习工作簿中的数据源并建立新的图标测试,仍是步骤2中的效果,如图所示: 4.在新建的练习工作簿中测试后,使用图例中分组可以直接将多选的列合并,如下图所示: 5.于是,返回官方视频中的练习工作簿,并开启图例(标记选项区下策空白处右键),设置分组显示,步骤如下图所示: PS:个人猜测可能