PHP正则全文,php正则-程序员宅基地

技术标签: PHP正则全文  

php正则[编辑]

概述

PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。

简介

PHP,是英文超文本预处理语言Hypertext Preprocessor的缩写。PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,被广泛地运用。可以生成Forms,ComboBoxes,Grid,Menus等的组件,并支持将数据转为XML/JSON格式。

PHP安装

它可以比 CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

正则表达式

正则表达式是php中一个非常重要的知识点,通常用来查找和替换字符串,最常用的就是验证用户输入的信息格式是否正确,如邮件格式、电话格式等等。还有比如采集器之类的软件中,正则也是必用不可。

基本语法

1. “/"是定界符,“/”定界符之间的部分就是将要在目标对象中进行匹配的模式。同时为了正则更加灵活,引入了元字符,即“+”, “*”,以及 “?”。

(1)“+”元字符规定其前导字符必须在目标对象中连续出现一次或多次

比如:/php+/,能够与“phpp”匹配,即字母ph后面连续出现一个或多个字母p的字符串相匹配。

(2)“*”元字符规定其前导字符必须在目标对象中出现零次或连续多次

比如:/php*/能够与“phpddt”相匹配,即ph后面可以有0个或多个p

(3)“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次。

其他重要的元字符:

\s:用于匹配单个空格符,包括tab键和换行符;

\S:用于匹配除单个空格符之外的所有字符;

\d:用于匹配从0到9的数字;

\w:用于匹配字母,数字或下划线字符;

\W:用于匹配所有与\w不匹配的字符;

. :用于匹配除换行符之外的所有字符。

2.定位符用于规定匹配模式在目标对象中的出现位置。常用的有“^”, “$”, “\b” 以及 “\B”

(1)“^”定位符规定匹配模式必须出现在目标字符串的开头

(2)“$”定位符规定匹配模式必须出现在目标对象的结尾

(3)\b定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一

(4)“\B”定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内

3.php的正则匹配模式非常灵活,可以指定某一范围

例如:

/[A-Z]/

上述正则表达式将会与从A到Z范围内任何一个大写字母相匹配。

/[a-z]/

上述正则表达式将会与从a到z范围内任何一个小写字母相匹配。

/[0-9]/

上述正则表达式将会与从0到9范围内任何一个数字相匹配。

/([a-z][A-Z][0-9])+/

上述正则表达式将会与任何由字母和数字组成的字符串

4.可以同时与多种模式选择匹配

如/phpddt.com|phpddt|100/可以与“phpddt.com” “phpddt” “100”相匹配

5.否定符 “[^]”规定目标对象中不能存在模式中所规定的字符串

参考资料:

扩展阅读:

相关词条:

合作编辑:

分享到:

更多

网络营销词典内容均由网友提供,仅供参考。如发现词条内容有问题,请发邮件至info # wm23.com。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42398151/article/details/116113451

智能推荐

从零开始学习 AJAX:超详细!15 分钟搞定 AJAX 原理和使用方法_ajax学习教程-程序员宅基地

文章浏览阅读3.7k次,点赞13次,收藏84次。本文将会介绍 AJAX 的原理和使用方法,并帮助你在短时间内掌握这一重要的前端技术。我们将从 AJAX 的基本概念入手,深入探讨 AJAX 的核心技术——XMLHttpRequest 对象以及常用的数据交互方式。通过本文的学习,你将能够轻松地了解 AJAX 的工作方式和应用场景,从而为你的 Web 应用程序添加更多的交互性和实时性。_ajax学习教程

PCL学习笔记(27)——Harris角点检测_点云 harris角点检测 r_normal r_keypoint-程序员宅基地

文章浏览阅读838次。源码#include <iostream>#include <pcl\io\pcd_io.h>#include <pcl/point_cloud.h>#include <pcl/visualization/pcl_visualizer.h>#include <pcl/io/io.h>#include <pcl/keypoints/harris_3D.h>//harris特征点估计类头文件声明#include <cst_点云 harris角点检测 r_normal r_keypoint

【数字电路】MacBook使用iverilog进行数字电路仿真_verilog mac-程序员宅基地

文章浏览阅读886次,点赞9次,收藏12次。MacBook使用iverilog进行数字电路仿真_verilog mac

干货 | SpringBoot注解大全,值得收藏-程序员宅基地

文章浏览阅读82次。点击上方“小强的进阶之路”,选择“星标”公众号重磅干货,第一时间送达!来自:博客园(作者:tanwei81)https://www.cnblogs.com/tanwei8..._小强干货

CRC校验、STM32中CRC计算单元、CRC应用-程序员宅基地

文章浏览阅读4.8k次,点赞2次,收藏25次。置顶/星标公众号,不错过每一条消息! 从这一段时间后台反馈的问题可以看得出来,好些朋友对CRC没有什么概念,今天就在这里讲述一下关于CRC校验、STM32中CRC计..._stm32 crc

Python报错ModuleNotFoundError: No module named 'numpy'-程序员宅基地

文章浏览阅读10w+次,点赞108次,收藏197次。Python报错ModuleNotFoundError: No module named ‘numpy’这种情况一般是缺少numpy所致,需要安装numpy。安装numpy的时候需要先更新pip,使用最新版的pip来安装:python -m pip install --upgrade pip然后pip install numpy接下来在命令行窗口运行python然后运行fr..._modulenotfounderror: no module named 'numpy

随便推点

前端——基础认知(1)_前端页面的认识-程序员宅基地

文章浏览阅读309次。自 黑马程序员。_前端页面的认识

实战指定pod分散部署节点之pod反亲和性(podAntiAffinity)-程序员宅基地

文章浏览阅读5.3k次。目录使用背景和场景pod亲和性和反亲和性的区别podAntiAffinity实战部署反亲和性分软性要求和硬性要求附完整的deployment.yaml配置注意使用背景和场景业务中的某个关键服务,配置了多个replica,结果在部署时,发现多个相同的副本同时部署在同一个主机上,结果主机故障时,所有副本同时漂移了,导致服务间断性中断基于以上背景,实现一个服务的多个副本分散到不同的主机上,使每个主机有且只能运行服务的一个副本,这里用到的是Pod anti-affinit_podantiaffinity

python和小爱同学_小爱mini与小爱同学除了外观,还有什么较大的区别?-程序员宅基地

文章浏览阅读228次。参加完发布会刚到家,先占个坑,等我吃饱了再来回答。~~~~~~~~~~~~~~~~~~~~小爱mini已开箱,电源改成usb接口了,5V2A。扬声器在音箱底部,顶部的麦克风只有4个。灯光放到了中间,而且灯光颜色,光斑大小会变化。按键做得比较烂,mini版省钱省在这上面了。小爱同学中间有个play键,可以迅速按一下停止或开始播放,但是mini版似乎把这个按键给精减了。其它几个按键按下之后反应比较慢,..._python控制小爱音箱

基于单链表实现直接插入排序算法详解_单链表插入排序-程序员宅基地

文章浏览阅读7.7k次,点赞17次,收藏77次。插入排序属于稳定排序法,是一种常用的排序算法。直接插入排序算法可以利用静态数组来实现,也可以使用静态链表或者单链表来实现。本文给出了直接插入算法的单链表实现方法。_单链表插入排序

从零开始实现TinyWebServer_tinywebserver c++-程序员宅基地

文章浏览阅读5.6k次,点赞21次,收藏127次。从0到服务器开发——TinyWebServer前言:修改、完整注释、添加功能的项目代码:https://github.com/white0dew/WebServer它是个什么项目?——Linux下C++轻量级Web服务器,助力初学者快速实践网络编程,搭建属于自己的服务器。使用 线程池 + 非阻塞socket + epoll(ET和LT均实现) + 事件处理(Reactor和模拟Proactor均实现) 的并发模型 使用状态机解析HTTP请求报文,支持解析GET和POST请求 访问服务_tinywebserver c++

select an archetype 空白--eclipse新建maven项目的bug_select an archetype空白-程序员宅基地

文章浏览阅读1.2w次,点赞14次,收藏23次。笔者软件环境: eclipse neno; jdk1.8.0_101; maven 3.3.9安装maven之后,在eclipse中新建maven project时: 看到的画面与教程不一样: 根本找不到archetype的模板;选择catalog,根本没反应;这样子进行不下去啊,宝宝好慌啊;百度google齐上阵,为_select an archetype空白