php正则表达式

博客介绍了PHP中正则表达式,它是用于字符串模式操作的语法规则,有匹配、替换、拆分等作用。PHP有PCRE和POSIX两套正则表达式函数库。还阐述了正则表达式的语法规则,包括行定位符、单词定界符、选择字符等。

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

1、正则表达式的简介
  正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找及替换操作。到目前为止,我们前面所用过的精确(文本)匹配也是一种正则表达式。
  在PHP中,正则表达式一般是由正规字符和一些特殊字符(类似于通配符)联合构成的一个文本模式的程序性描述。
  正则表达式的三个作用:匹配、用新文本代替匹配文本、将一个字符串拆分为一组更小的信息块。
  在PHP中有两套正则表达式函数库,两者功能相似,只是执行效率略有差异:
    一套是由PCRE(Perl Compatible Regular Expression)库提供的。使用“preg_”为前缀命名的函数;
    一套由POSIX(Portable Operating System Interface of Unix )扩展提供的。使用以“ereg_”为前缀命名的函数;
2、正则表达式的语法规则
  行定位符(^与$)
    行定位符是用来描述字符串的边界。“$”表示行结尾“^”表示行开始如"^de",表示以de开头的字符串 "de$",表示以de结尾的字符串。

  单词定界符
    我们在查找的一个单词的时候,如an是否在一个字符串”gril and body”中存在,很明显如果匹配的话,an肯定是可以匹配字符串“gril and body”匹配到,怎样才能让其匹配单词,而不是单词的一部分呢?这时候,我们可以是哟个单词定界符\b。 \ban\b 去匹配”gril and body”的话,就会提示匹配不到。 当然还有一个大写的\B,它的意思,和\b正好相反,它匹配的字符串不能使一个完整的单词,而是其他单词或字符串中的一部分。如\Ban\B。

  选择字符(|) ,表示或
    选择字符表示或的意思。如Aa|aA,表示Aa或者是aA的意思。注意使用”[]”与”|”的区别,在于”[]”只能匹配单个字符,而”|”可以匹配任意长度的字符串。在使用”[]”的时候,往往配合连接字符”-“一起使用,如[a-d],代表a或b或c或d。

  排除字符,排除操作
    正则表达式提供了”^”来表示排除不符合的字符,^一般放在[]中。如[^1-5],该字符不是1~5之间的数字。

  限定符(?*+{n,m})
    限定符主要是用来限定每个字符串出现的次数。

 
限定字符含义
零次或一次
*零次或多次
+一次或多次
{n}n次
{n,}至少n次
{n,m}n到m次

 

 

 

 

 

 

  点号操作符

    匹配任意一个字符(不包含换行符)

  表达式中的反斜杠(\)

    表达式中的反斜杠有多重意义,如转义、指定预定义的字符集、定义断言、显示不打印的字符。

     

 

转载于:https://www.cnblogs.com/Rickyy/p/10821869.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值