今天遇到一个很奇怪的问题,在做对表单提交的数据进行正则匹配时,发现匹配的数据不完整,但是PHP也不报错,后来查了下,原来PHP对内容的长度是有限制的。比如:preg_match(‘/<img.*src="(.+)".*>/Uis’, $str)) 因为提交的数据包含base64的图片数据,所以很大,结果只匹配到一张图片,我提交了5张图片。用ph ......
260
0
0
2023-06-18
本文中的部分修饰符为PCRE兼容,部分语言正则底层实现有差异,可能不完全一致。i (PCRE_CASELESS) 如果设置了这个修饰符,模式中的字母会进行大小写不敏感匹配。m (PCRE_MULTILINE)默认情况下,PCRE 认为目标字符串是由单行字符组成的(然而实际上它可能会包含多行),"行首"元字符 ^ 仅匹配字符串的开始位置, 而"行末"元字符s ......
330
0
0
2023-01-06
正则表达式,又称规则表达式,是一种文本模式,通常用来检索、替换和控制文本。主要包括a 到 z 的字母以及一些特殊的元字符。正则表达式的应用范围非常之广泛,最初是由Unix普及开来的,后来在广泛运用于Scala 、PHP、C# 、Java、C++ 、Objective-c、Perl 、Swift、VBScript 、Javascript、Ruby 以及Pyth ......
269
0
0
2022-12-26
一、基本字符1.1、确定字符一个最简单的正则表达式,就是一组确定字符,如hello就是一个正则表达式,它会匹配下文中的hello/hello直接匹配内容1.2、范围字符范围字符,单个范围字符只表示一个字符字符 描述 兼容性 .任意字符 除换行符外的任意单个字符 添加s修饰符,可以让.包括换行符 \w单词字符 字母、数字、下划线任意单个字符。大写\W表示非单词 ......
409
0
0
2022-11-12
很多不太懂正则的朋友,在遇到需要用正则校验数据时,往往是在网上去找很久,结果找来的还是不很符合要求。所以我最近把开发中常用的一些正则表达式整理了一下,在这里分享一下。给自己留个底,也给朋友们做个参考。一、校验数字的表达式1 数字:^[0-9]*$2 n位的数字:^\d{n}$3 至少n位的数字:^\d{n,}$4 m-n位的数字:^\d{m,n}$5 零和非 ......
301
0
0
2022-10-20
匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}如 0511-4405222 或 021-87888822匹配QQ号:[1-9][0-9]{4,}从10000开始邮政编码:[1-9]\d{5}(?!\d)邮政编码为6位数字匹配身份证:/^(\d{14}|\d{17})(\d|[xX])$/匹配规则:身份证号码有15位或者18位,其中最后一位可 ......
430
0
0
2022-05-17
1、校验中文字符串只能是中文^[\\u4e00-\\u9fa5]{0,}$2、由数字,26个英文字母或下划线组成的字符串^\\w+$3、校验E-Mail 地址[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w ......
387
0
0
2022-05-13
推荐两个还不错的正则反向生成匹配符串的包有时候我们需要生成大堆符合正则匹配的字符串来进行测试,则需要反向生成符合正则规则的方法,以下推荐两个不错的包。一:Paggerngithub.com/gajus/paggern二: ReverseRegexgithub.com/icomefromthenet/Reverse... ......
286
0
0
2022-04-13
分组 ()分支 |常用的元字符元符号 作用 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束常用的限定符代码/语法 说明 * 重复零次或更多次 + 重复一次或更多次 ? 重复零次或一次 {n} 重复n次 {n,} 重复n次或更多次 ......
399
0
0
2022-04-10
以下代码可以简单的匹配到中文字符:preg_match('/[\x{4e00}-\x{9fa5}]+/u', '中国'); 如果匹配全是中文,需要加上起始判断符和终止符preg_match('/^[\x{4e00}-\x{9fa5}]+$/u', '中国'); 匹配中英文标点符号preg_match('/[^\x{4e00}-\x{9fa5}a-zA-Z ......
522
0
0
2022-04-03
header("Content-Type:text/html;charset=utf-8"); //preg_match('/((?=[\x21-\x7e]+)[^A-Za-z0-9])/i','中文★中文。中文.中文',$matches); preg_match('/[^\x{4e00}-\x{9fa5}a-zA-Z0-9]/u','中文★中文。中 ......
472
0
0
2022-03-20