字符串和正则表达式-php

本文介绍了PHP中常用的字符串操作函数,如计算长度、截取、查找等,并详细解析了正则表达式的使用方法及常见表达式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

strlen
计算字符串长度
substr
截取字符串,采用 起点—长度 方式。
strstr
截取字符串,采用 子串—结尾 方式。
strpos
查找子串在原串的出现位置,从 0 开始
explode
分割字符串,将字符串毁成数组。
implode
连接字符串,将数组毁成一排。
trim
去掉左右空格
str_pad
填充补齐
strtoupper
转为大写
strtolower
转为小写
str_replace
普通式替换
strtr
翻译式替换
strrev
字符反转

 

int strlen ( string string)  返回的是字节数。

string substr ( string string, int start [, int length])  strart为起始位置,从0开始,length中长度.

string strstr ( string 原串, string 标识)  截字原字符串中,从包含标识处到结尾的字符。If 标识  is not found, returns FALSE

int strpos ( string haystack, string needle [, int offset])  返回needls在haystack的出现位置。从0开始,0表示开始位置。未找到返回false,省略offset则从头查起,否则从offset指定的数值算起。

array explode ( string separator, string string [, int limit]) 按标识拆分字符串。 Separator为拆分标识,string不原煤字符串。拆分之后,得到的是数组类型

string implode ( string glue, array pieces)  与explode正好相反,将数组变成字符串。glue为连接标识,pieces为数组

string trim ( string str [, string charlist]) str为在处理的字符串;charlist为要去掉的内容。默认为去空格及/r /t /n。

mixed str_replace ( mixed old, mixed new, mixed string [, int &count]) 字符串翻译式替换

string strtr ( string str, array replace_pairs) 字符串翻译式替换

 

******************************************************************************************

 

正则表达式
 
字符匹配:
ereg()
preg_match();

1、如果匹配,返回1,也就是true,否则返回0,也就是 false.
2preg_match()ereg()的替代方案, preg_match()速度更快。
$aa=preg_match("/hi/","fdfhi ,china");
echo $aa; // 1

字符替换:
ereg_replace()
preg _replace()
echo preg_replace(/hi/i,zuoyefeng,HI ,china php );

//zuoyefeng ,czuoyefengna php 
i表示不区别大小写
preg_match_all()
preg_quote()
preg_split()
preg_grep()
 
元字符
名称
说明
/
反斜杠
转义字符
|
管道运算符
匹配其中任一个
()
圆括号
把字符、元字符和子表达式组合成组
[]
方括号
建立一个字符类,该类型将匹配方括号内所包含的任 意一个字符。
{}
大括号
为前导表达式定义一个最小 / 最大匹配数目
^
插入符
匹配一行的起始点
$
美元符号
匹配一行的结束点
*
星号
匹配0个或多个前导表达式
?
问号
匹配0个或1个前导表达式
+
加号
匹配1个或多个前导表达式
.
点号
匹配任意一个字符
-
短横线
在一个字符类中指定一个字符的范围

 

常用正则表达式:

 

 

"^/d+$"  //非负整数(正整数 + 0

"^[0-9]*[1-9][0-9]*$"  //正整数

"^((-/d+)|(0+))$"  //非正整数(负整数 + 0

"^-[0-9]*[1-9][0-9]*$"  //负整数

"^-?/d+$"    //整数

"^/d+(/./d+)?$"  //非负浮点数(正浮点数 + 0

"^(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$"  //正浮点数

"^((-/d+(/./d+)?)|(0+(/.0+)?))$"  //非正浮点数(负浮点数 + 0

"^(-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //负浮点数

"^(-?/d+)(/./d+)?$"  //浮点数

"^[A-Za-z]+$"  //26个英文字母组成的字符串

"^[A-Z]+$"  //26个英文字母的大写组成的字符串

"^[a-z]+$"  //26个英文字母的小写组成的字符串

"^[A-Za-z0-9]+$"  //由数字和26个英文字母组成的字符串

"^/w+$"  //由数字、26个英文字母或者下划线组成的字符串

"^[/w-]+(/.[/w-]+)*@[/w-]+(/.[/w-]+)+$"    //email地址

"^[a-zA-z]+://(/w+(-/w+)*)(/.(/w+(-/w+)*))*(/?/S*)?$"  //url

[code]电子邮件 : "^/w+((-/w+)|(/./w+))*/@/w+((/.|-)/w+)*/./w+$"

HTTP URL : "^[url]http://([/url][/w-]+/.)+[/w-]+(/[/w- ./?%&=]*)?";

邮编 : "/d{6}"

身份证 : "/d{18}|/d{15}"

整数 : "^/d{1,}$"

数值 : "^-?(0|/d+)(/./d+)?$"

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值