袁来如此的工作笔记
袁来如此的工作笔记
竹杖芒鞋轻胜马,谁怕? 一蓑烟雨任平生。

全面解读php-正则表达式

浏览量:229

what:

why:

how:

1、通用原子:

  • d : 数字。  D : 除了数字。
  • w : 数字,字母,下划线。W : 除了数字,字母,下划线。
  • s  : 空白符 。 S : 除了空白符  。

 2、元字符:

  • . :除了换行以外的所有字符
  • : 匹配前面的内容出现 0 次及以上。
  • ? : 匹配前面的内容出现 0 次或 1 次
  • + : 出现一次或多次。
  • ^ : 必须以它开头。
  • $ : 必须以它结尾。
  • {n} : 恰巧出现 n 次。
  • {n,} : 大于等于 n 次。
  • {n,m} : 大于等于 n, 小于等于 m.
  • [] : 是一个集合,匹配中括号中的任意一个字符,如:[abc]即为匹配a或b或者c。
  • () : 后项引用 或者是当做一个整体。
  • [^]: 取反。
  • | : 或者
  • [-] : 代表一个范围,如[0-9],匹配即为 0123456789

 3、模式修正符

  • i:不区分大小写
  • m:将字符串通过分隔符进行分割,将字符串中的每一行分别进行匹配。
  • e: 将匹配出来的内容做一些php语法上的处理。
  • s: 修正 "." 的换行。
  • U: 取消贪婪模式
  • x: 忽略模式中的空白符。
  • A: 必须以这个模式开头。
  • D: 修正 "$" 对 "n" 的忽略。
  • u: 做 utf-8 中文匹配的时候使用。
  • g:该表达式可以进行全局匹配。

 示例:

现在需要正则验证一个input框,我想输入的是非整数就自动变成空值。

正则如下;

# 不加入/g,则只返回第一个匹配,无论执行多少次均是如此,如果加入g,则第一次执行也返回第一个匹配,再执行返回第二个匹配,依次类推。 #/[^0-9]/g,这个正则表达式的意思是全局匹配非数字类型和非-的字符。 /[^0-9|-]/g

 

 匹配到该正则后,就将input的值置空即可。


打赏