4.PHP正则表达式与数组
PHP正则表达式相关
行定位符 开头 ^tm 结尾 tm$ 不限制 tm
单词定界符 \btm\b 单词tm,如果想取反的话就是大写的 \Btm\B
或的关系,[Tt][Mm] 可以表达 tm Tm TM tM
POSIX风格预定义字符类
选择字符(|) T|tM|m 意思是可以T或者t开头。后面跟着一个字母M或者m
使用[]和使用|的区别在于[]只能匹配单个字符,而|可以匹配多个字符 TM|tm|Tm|tM.
范围 [a-zA-Z]等价于[abc..zABC..Z]
排除字符[^] 不是以字符开头的 [^a-zA-Z]
限定符号
符号(.),.可以匹配除了换行意外的任何一个字符
^s.t$ 可以表示 sat sbt sct..如果想是第一个字符是r,第三个字符是s,最后一个字符是t则可以 ^r.s.*t$
反斜线相关(\)
括号 (thri|four)th
反向引用(it)\1 是表示两个it
模式修饰符
POSIX扩展正则表达式函数
1.
bool ereg/eregi(string pattern ,string string,[array regs])
String中匹配string存在regs里(*i不区分大小写)
2.
string ereg/eregi_replace(string s1 .string s2 ,string s3)
S3中匹配S1,匹配成功就用s2来替换。
3.
Array split/spliti(string s1 ,string s2 ,[int limit]);
使用s1分割s2,最大次数限制limit
PCRE兼容正则表达式函数
1.
Array preg_grep(string s1 ,array s2)
使用s2中的元素意义匹配表达式s1,最后返回匹配成功组成的数组
2.
Int preg_match/preg_match_all(string s1 ,string s2,[array s3])
用s1去匹配s2,函数返回匹配次数,如果有数组s3那么每次匹配的结果豆浆存储到s3中。没有all的匹配一个,有all的匹配所有。
3.
String preg_quote(string s1 ,[string s2])
该函数将s1中所有特别字符进行自动转意。如果有s2的话也转意。
4.
Mixed preg_replace(mixed s1 ,mixed s2 ,mixed ,s3 ,[int limit])
字符换替换。
5.
Mixed preg_replace_callback(mixed s1 ,callback callback ,mixed s2 ,[int limit])
该函数与preg_replace()函数功能一样。都用于查找和替换字符串。不同的是该函数使用一个回调函数来替换replacement参数。
6.
Array preg_split(string s1 ,strin s2 ,[int limit])
分割字符串
声明
<?php
$array = array("asp","php" ,"jsp");
print_r($array);
?>
Array ( [0] => asp [1] => php [2] => jsp )
关联数组
<?php
$array = array("f"=>1,"s"=>2 ,"t"=>3);
print_r($array);
?>
Array ( [f] => 1 [s] => 2 [t] => 3 )
数组输出函数print_r(array);
二维数组
<?php
$array = array("1"=>array(1.1,1.2,1.3),"2"=>array(2.1,2.2,2.3,2.4));
print_r($array);
?>
Array([1]=>Array([0]=>1.1 [1]=>1.2[2]=>1.3)[2]=>Array([0]=>2.1[1]=>2.2[2]=>2.3[3]=>2.4))
数组遍历foreach($array as $i){echo $i} 或者list函数。
字符串与数组的转换 explode()函数。
<?php
$str1 = "1.2.3.4.5";
$str2 = explode("." ,$str1);
print_r ($str2);
?>
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
String implode(string s1 ,array s2)把数组合成一个字符串,中间用s1连接。
Int count(mixed array ,[int mode])统计元素个数
Mixed array_search(mixed needle ,array array ,[bool strict])
Array_pop()取出最后一个元素。
array_push()增加一个元素
Array_unique()去重
4.PHP正则表达式与数组的更多相关文章
- php正则表达式、数组
<?php $s = "he8llo5wor6ld"; $s = preg_replace("/\d/","#",$s);按照正则表达 ...
- PHP正则表达式;数组:for()遍历、 foreach ()遍历、each()list()组合遍历;指针遍历
正则表达式: 1.定界符号 任何字符,一般用 // 2. 模式修正符i 写在定界符外面后面,可不区分大小写 3.preg_replace($reg,&q ...
- php正则表达式and数组
<?php //正则表达式 //斜杠代表定界符 /^$/ /* $str="abcde123fg456h"; $reg="/\d/"; echo preg ...
- 使用正则表达式和数组形式获取get方法传入的值
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- PHP数组——数组正则表达式、数组、预定义数组
正则表达式 1.替换 $s = "hello5world"; $s = preg_replace("/\d/","#",$s); echo ...
- PHP数组(数组正则表达式、数组、预定义数组)
正则表达式 1.替换 $s = "hello5world"; $s = preg_replace("/\d/","#",$s); echo ...
- php正则表达式和数组
一.正则表达式 1. “/”代表定界符,"^"代表起始符号,"$"代表结束符号 $str1="abc123def45ghjk6789lou" ...
- Oracle存储过程例子:运用了正则表达式、数组等
代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-- ...
- C语言正则表达式详解 regcomp() regexec() regfree()详解
标准的C和C++都不支持正则表达式,但有一些函数库可以辅助C/C++程序员完成这一功能,其中最著名的当数Philip Hazel的Perl-Compatible Regular Expression库 ...
随机推荐
- 十一. SpringCloud Alibaba
1. SpringCloud Alibaba简介 1.1 为什么会出现SpringCloud Alibaba Spring Cloud Netflix项目进入到维护模式 什么是维护模式?=> 将 ...
- 自己动手实现springboot运行时新增/更新外部接口
最近有个需求:需要让现有springboot项目可以加载外部的jar包实现新增.更新接口逻辑.本着拿来主义的思维网上找了半天没有找到类似的东西,唯一有点相似的还是spring-loaded但是这个东西 ...
- .Net5 下Dictionary 为什么可以在foreach中Remove
在一个讨论群里,看见有人说Dictionary可以在foreach中直接调用Remove了,带着疑问,写了简单代码进行尝试 class Program { static void Main(strin ...
- Hznu_oj 2340 你敢一个人过桥吗?
Description 在漆黑的夜里,N位旅行者来到了一座狭窄而且没有护栏的桥边.如果不借助手电筒的话,大家是无论如何也不敢过桥去的.不幸的是,N个人一共只带了一只手电筒,而桥窄得只够让两个人同时过. ...
- PTA 数组循环右移
6-2 数组循环右移 (20 分) 本题要求实现一个对数组进行循环右移的简单函数:一个数组a中存有n(>)个整数,将每个整数循环向右移m(≥)个位置,即将a中的数据由(a0a1⋯ ...
- 盘点 Django 展示可视化图表的多种方式(建议收藏)
1. 前言 大家好,我是安果! 使用 Django 进行 Web 开发时,经常有需要展示图表的需求,以此来丰富网页的数据展示 常见方案包含:Highcharts.Matplotlib.Echarts. ...
- SpringMVC时间格式和时区解决办法
问题默认情况下在使用spring的@ResponseBody返回json串时,如果有日期类型的数据,会发现在日期会莫名其妙的差8小时比如:2017-12-20 10:16:23.0结果是:2017-1 ...
- 以Aliyun体验机为例,从零搭建LNMPR环境(下)
使用云服务器搭建 Web 运行环境,尤其是搭建常见的 LNMPR(Linux+Nginx+MySQL+PHP+Redis) 环境,对于开发人员是必备的职场基本技能之一.在这里,借着搭建我的" ...
- Dynamics CRM证书更换
Dynamics CRM产品一般有两种认证方式.第一种是基于声明的内部访问也就是无证书单纯用账号密码验证.第二种就是联合身份认证,需要安装网站证书. 对于联合身份认证的情况因为需要安装证书,而且证书是 ...
- Struts2(十六篇)
(一)Struts2框架概述 (二)Struts2配置文件 (三)Struts2的Action(简单讲解版) (四)Struts2的Action(深入讲解版) (五)Struts2处理结果管理 (六) ...