php基础31:正则匹配-元字符
<?php
//2.正则表达式:元字符
$model = "/php/";
$string = "php";
// 1.元字符 [a-z] 匹配任何a-z的字符串
// []:中括号语法表示,匹配任意一个即可
$model = "/[abc]/";
$string = "a";
echo preg_match($model, $string);
$model = "/[abc]/";
$string = "b";
echo preg_match($model, $string);
$model = "/[abc]/";
$string = "a";
echo preg_match($model, $string);
$model = "/[abc]/";
$string = "abdddsssaassas";
echo preg_match($model, $string);
$model = "/[abc]/";
$string = "dddddddasssddddd";
echo preg_match($model, $string);
$model = "/[0-9]{3}/";
$string = "123ffssd";
echo preg_match($model, $string);
//备注:[]匹配该范围内的任意一个字符即可
$model = "/[a-zA-Z0-9_]/";//
$string = "_";
echo preg_match($model, $string)."<hr>";
//2.[^abc]:主意是在中括号内部加^
//[^abc]表示匹配除了abc,任何一个就可以了
$model = "/[^abc]/";
$string = "a";
echo preg_match($model, $string);
$model = "/[^abc]/";
$string = "b";
echo preg_match($model, $string);
$model = "/[^abc]/";
$string = "c";
echo preg_match($model, $string);
$model = "/[^abc]/";
$string = "abcsabc";
echo preg_match($model, $string)."<hr>";
//3. \w 匹配任何包含a-zA-Z0-9和下划线的字符串
// \w <=> [a-zA-Z0-9_]
$model = "/\w/";
$string = "c";
echo preg_match($model, $string);
$model = "/\w/";
$string = "&";
echo preg_match($model, $string);
$model = "/\w/";
$string = "0&";
echo preg_match($model, $string)."<hr>";
//4. \W(与小写的要区分)
// \W 与 \w 正好相反
$model = "/\W/";
$string = "&";
echo preg_match($model, $string);
$model = "/\W/";
$string = "0&";
echo preg_match($model, $string);
$model = "/\W/";
$string = "s";
echo preg_match($model, $string)."<hr>";
//05. \d 匹配任意数字
// 与 [0-9]相同
$model = "/\d/";
$string = "11";
echo preg_match($model, $string);
$model = "/\d/";
$string = "$";
echo preg_match($model, $string);
$model = "/\d/";
$string = "AS";
echo preg_match($model, $string)."<HR>";
//06:\D 与 \d 相反
// 与 [^0-9]相同
$model = "/\D/";
$string = "$0";
echo preg_match($model, $string);
$model = "/\D/";
$string = "0";
echo preg_match($model, $string)."<hr>";
//07:\s 匹配任何空白字符
$model = "/\s/";
$string = "$0";
echo preg_match($model, $string);
$model = "/\s/";
$string = " 0";
echo preg_match($model, $string)."<hr>";
// \S 与 \s 相反
$model = "/\S/";
$string = " 0";
echo preg_match($model, $string)."<hr>";
//08: \b 表示到达了单词的边界,边界可以理解为空格
// \B 表示没有到达空格
$model = "/php\b/";
$string = "php";
echo preg_match($model, $string);
$model = "/php\b/";
$string = "php,";
echo preg_match($model, $string);
$model = "/php\b/";
$string = "phpzzz";
echo preg_match($model, $string);
$model = "/php\b/";
$string = "php,gggggg";
echo preg_match($model, $string)."<hr>";
//09: \匹配正则中的特殊字符
// 比如+是正则里面的特殊字符,如果要匹配特殊字符的话,必须加上 \
$model = "/ph\+p/";
$string = "ph+p";
echo preg_match($model, $string);
$model = "/ph\+p/";
$string = "ccccph+pdddd";
echo preg_match($model, $string)."<hr>";
?>
php基础31:正则匹配-元字符的更多相关文章
- Java基础--常用正则匹配符号(必背,必须背,死都要背)
1.字母:匹配单个字母 (1)A:表示匹配字母A: (2)\\:匹配转义字符“\”: (3)\t:匹配转义字符“\t”: (4)\n:匹配转义字符“\n”: 2.一组字符:任意匹配里面的一个单个字符: ...
- Python 基础之正则之二 匹配分组,正则相关函数及表达式修饰符
四.匹配分组 [元字符] 分组符号 a|b 匹配字符a 或 字符b (如果两个当中有重合部分,把更长的那个放前面) (ab) 匹配括号内的表达式 ,将()作为一个分组 num 引用分组 ...
- Flask基础(3):session、flash、特殊装饰器、蓝图、路由正则匹配、上下文管理 & flask-session
Session: Flask 默认将 session 以加密的形式放到了浏览器的 cookie 中 Flask 的 session 就是一个字典,字典有什么方法 session 就有什么方法 flas ...
- python中正则匹配之re模块
Python中正则表达式 re:re是提供正则表达式匹配操作的模块 一.什么是正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某个模式匹配,Python 自1.5版本起 ...
- MySQL全面瓦解8:查询的正则匹配
概述 上一章 查询的过滤条件,我们了解了MySQL可以通过 like % 通配符来进行模糊匹配.同样的,它也支持其他正则表达式的匹配,我们在MySQL中使用 REGEXP 操作符来进行正则表达式匹配. ...
- Aho-Corasick算法、多模正则匹配、Snort入门学习
希望解决的问题 . 在一些高流量.高IO的WAF中,是如何对规则库(POST.GET)中的字符串进行多正则匹配的,是单条轮询执行,还是多模式并发执行 . Snort是怎么组织.匹配高达上千条的正则规则 ...
- python_way day18 html-day4, Django路由,(正则匹配页码,包含自开发分页功能), 模板, Model(jDango-ORM) : SQLite,数据库时间字段插入的方法
python_way day18 html-day4 1.Django-路由系统 - 自开发分页功能 2.模板语言:之母板的使用 3.SQLite:model(jDango-ORM) 数据库时间字 ...
- java 正则匹配空格字符串 正则表达式截取字符串
java 正则匹配空格字符串 正则表达式截取字符串 需求:从一堆sql中取出某些特定字符串: 比如配置的sql语句为:"company_code = @cc and project_id = ...
- 常用的JavaScript正则匹配规则代码收藏,很实用
收集一些常用的JavaScript正则表达式匹配规则,比如匹配电话号码.Email.中文字符.身份证号.邮编.QQ号.过滤空白行.匹配特定数字等.觉得这玩意是很有用的,只不过自己水平菜,老是自己写不出 ...
随机推荐
- linq扩展之动态排序
前两天看QQ群里面,一位朋友问的问题,说在linq中怎么实现动态排序呢,自己想了半天,没有头绪,网上找了下相关的资料,看了下,收益挺多,记录下来. 之前我们没有如果不知道动态排序的方法的话,我们可能会 ...
- 做一些Spring AOP做过的事,封装 jdk动态代理成为一个黑盒子
怎么使用eclise 抽取方法,请看 利用eclipse 抽取代码片段为方法 抽取完成之后,还需要 ① 将Collection.class换成 target.getClass(),targ ...
- Effective Java 03 Enforce the singleton property with a private constructor or an enum type
Principle When implement the singleton pattern please decorate the INSTANCE field with "static ...
- 转 Java多线程中Sleep与Wait的区别
Java中的多线程是一种抢占式的机制,而不是分时机制.抢占式的机制是有多个线程处于可运行状态,但是只有一个线程在运行. 共同点: 1. 他们都是在多线程的环境下,都可以在程序的调用处阻塞指定的毫秒数, ...
- 编写一个Java项目,定义包,在包下定义包含main方法的类,在main方法中声明8种基本数据类型的变量并赋值,练习数据类型转换。
- 《SQL Server企业级平台管理实践》读书笔记——SQL Server中收缩数据库不好用的原因
数据库管理员有时候需要控制文件的大小,可能选择收缩文件,或者把某些数据文件情况以便从数据库里删除. 这时候我们就要使用到DBCC SHRINKFILE命令,此命令的脚本为: DBCC SHRINKFI ...
- 魔改——MFC MDI程序 定制 文档模板 运行时全部打开 禁用关闭按钮
==================================声明================================== 本文原创,转载在正文中显要的注明作者和出处,并保证文章的完 ...
- Error: Could not access the Package Manager. Is the system running?
最近在搭建cordova,android 开发环境,安装android studio之后创建一个demo之后,运行想看一下效果,在运行过程中创建一个虚拟机(arm)的,等了有1分钟左右,再次运行程序, ...
- Mac/Linux 定时运行命令行
想要开机运行的话可以通过 mac 自带的 Automator 将要运行的命令打包成一个app,用后在用户组的“登录时启动”列表里加上那个app. 但是想要定时运行就不能这么做了,要用上一个叫cront ...
- AMO olap Test C# generate tsql and mdx
通过AMO访问online的cube,生成等值的TSql和mdx 自动生成等值的TSQL和MDX进行Cube测试.其中难度比较大的部分是拼接TSQL. 暂时不处理calculations,只除理met ...