PHP 几个常用的正则表达式
记录几个PHP中比较常用的正则。
/**
* 验证用户名
* 字母、数字、下划线、汉字组成,2-20位字符,不能为纯数字
*
* @param $username
* @param int $min_len
* @param int $max_len
* @return bool|int
*/
public function isUserName($username, $min_len = 2, $max_len = 20)
{
if (empty($username)) {
return false;
}
$match = '/^(?![0-9]+$)[\w\x{4e00}-\x{9fa5}]{' . $min_len . ',' . $max_len . '}$/iu';
return preg_match($match, $username);
}
/**
* 验证密码格式
* 6-20个英文字母、数字或符号,不能是纯数字
*
* @param $password
* @param int $min_len
* @param int $max_len
* @return bool|int
*/
public static function isPassword($password, $min_len = 6, $max_len = 20)
{
$match = '/^[\\~!@#$%^&*()-_=+|{}\[\],.?\/:;\'\"\d\w]{' . $min_len . ',' . $max_len . '}$/';
$password = trim($password);
if (empty($password)) {
return false;
}
if (preg_match('/^[\d]*$/', $password)) {
return false;
}
return preg_match($match, $password);
}
/**
* 验证eamil格式
* @param $email
* @param string $match
* @return bool|int
*/
public static function isEmail($email, $match = '/^[\w\d]+[\w\d-.]*@[\w\d-.]+\.[\w\d]{2,10}$/i')
{
$email = trim($email);
if (empty($email)) {
return false;
}
return preg_match($match, $email);
}
/**
* 验证手机号
* @param $mobile
* @param string $match
* @return bool|int
*/
public static function isMobile($mobile, $match = '/^((\+86)?(1[3|4|5|6|7|8|9]\d{9}))$/')
{
$mobile = trim($mobile);
if (empty($mobile)) {
return false;
}
return preg_match($match, $mobile);
}
/**
* 验证身份证号码
* @param $idcard
* @param string $match
* @return bool|int
*/
public static function isIdcard($idcard, $match = '/^\d{6}((1[89])|(2\d))\d{2}((0\d)|(1[0-2]))((3[01])|([0-2]\d))\d{3}(\d|X)$/i')
{
$idcard = trim($idcard);
if (empty($idcard)) {
return false;
} else if (strlen($idcard) > 18) {
return false;
}
return preg_match($match, $idcard);
}
/**
* 验证URL
* @param $url
* @param string $match
* @return bool|int
*/
public static function isUrl($url, $match = '/^(http:\/\/)?(https:\/\/)?([\w\d-]+\.)+[\w-]+(\/[\d\w-.\/?%&=]*)?$/')
{
$url = strtolower(trim($url));
if (empty($url)) {
return false;
}
return preg_match($match, $url);
}
//匹配html中的img标签
public static function matchImg($content)
{
if (empty($content)) {
return false;
}
$match = '/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i';
return preg_match($match, $content);
}
PHP 几个常用的正则表达式的更多相关文章
- 常用JS正则表达式
常用JS正则表达式 收集一些常用的JavaScript正则表达式匹配规则,比如匹配电话号码.Email.中文字符.身份证号.邮编.QQ号.过滤空白行.匹配特定数字等.觉得这玩意是很有用的,只不过自己水 ...
- PHP常用验证正则表达式
PHP常用验证正则表达式 数字.手机号.QQ号.Url地址合法性校验 1.验证是否为整数 1 function isNumber($val) 2 { 3 if(ereg("^[0-9]+$& ...
- 常用的正则表达式归纳—JavaScript正则表达式
来源:http://www.ido321.com/856.html 1.正则优先级 首先看一下正则表达式的优先级,下表从最高优先级到最低优先级列出各种正则表达式操作符的优先权顺序: 2.常用的正则表达 ...
- C#开发学习——常用的正则表达式
对于想学习正则表达式的童鞋,一些基础的语法啥的,可以参考 http://www.cnblogs.com/China3S/archive/2013/11/30/3451971.html 下边是一些我们常 ...
- Java中常用的正则表达式
常用的正则表达式 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内):[^\x00-\xff] 匹配空行的正则表达式:\n[\s| ]*\r 匹配HTML标记的 ...
- 常用js正则表达式大全
常用js正则表达式大全.一.校验数字的js正则表达式 1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和 ...
- php中常用的正则表达式函数
php中常用的正则表达式函数 * preg_match() * preg_match_all() * preg_replace() * preg_filter() * preg_grep() * pr ...
- input pattern中常用的正则表达式
常用的正则表达式 pattern的用法,只是列出来一些常用的正则: 信用卡 [0-9]{13,16} 银联卡 ^62[0-5]\d{13,16}$ Visa: ^4[0-9]{12}(?:[0-9]{ ...
- [ActionScript 3.0] 常用的正则表达式
as 3.0常用的正则表达式: /* * 去除字符串前面的空格和跳格符 */ var src:String=" Hello! "; trace(src); //原文本 trace( ...
- python 基础 8.0 regex 正则表达式--常用的正则表达式
一. python 中常用的正则表达式 二. 正则表达式的网站,可以进行在线正则匹配 https://regex101.com/ 1. 使用方法及正则介绍 1> ‘.’ 匹 ...
随机推荐
- k8s 基于NFS部署storageclass pv自动供给
在k8s中部署有状态应用时,通常需要做数据持久化存储. 后端存储的方式有以下几种: 1.基于宿主机本地的存储方式: (重启pod时,若pod被调度到其他节点上,尽管原来节点上的数据不会丢失,但是其他节 ...
- k8s基于canel的网络策略
Kubernetes能够把集群中不同Node节点上的Pod连接起来,并且默认情况下,每个Pod之间是可以相互访问的.但在某些场景中,不同的Pod不应该互通,这个时候就需要进行访问控制.亲测:在kube ...
- AHB 总线问答(转)
AHB总线问答 http://blog.163.com/huanhuan_hdu/blog/static/1352981182011625916845/ 仲裁:主设备可以在一个突发传输中解除HLOCK ...
- 【windows】【md5】查看文件的md5值
certutil -hashfile filename MD5 certutil -hashfile filename SHA1 certutil -hashfile filename SHA256 ...
- Kafka 基础实战 :消费者和生产者实例
学习地址: http://www.jikexueyuan.com/course/2036.html
- graph-Kruskal-algorithm
并查集是一种树型的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题.主要操作:1. 初始化:每个点所在集合初始化为其自身.2. 查找:查找元素所在的集合,即根节点.3. ...
- Linux压缩与归档
文件的压缩 aaaaaabbbbccc压缩成为6a4b3c 压缩工具: gzip/gunzip: .gz后缀 只能压缩文件,不能压缩目录,因其不具备归档功能 ...
- luogu2158 [SDOI2008]仪仗队 欧拉函数
点 $ (i,j) $ 会看不见当有 $ k|i $ 且 $ k|j$ 时. 然后就成了求欧拉函数了. #include <iostream> #include <cstring&g ...
- Selenium WebDriver-操作下拉框内容
操作下拉框中的内容 #encoding=utf-8 import unittest import time import chardet from selenium import webdriver ...
- python - 接口自动化测试实战 - case1 - 优化版
题目: 基于以下两个接口和数据完成接口自动化测试,并生成测试报告: '''登录 login='http://47.107.168.87:8080/futureloan/mvc/api/member/l ...