Maison php教程 php手册 三分钟学会PHP正则表达式

三分钟学会PHP正则表达式

Jun 13, 2016 am 11:04 AM
php web 动态 apprendre 开发 Oui 正则 pratique 编写 脚本 表达式 语言 页面

PHP是编写动态WEB页面开发常用的脚本语言,而正则表达式是PHP中很重要的一个部分,下面我们就PHP正则表达式和大家详细的谈谈吧。在ASP和ColdFusion,用户可以混合使用PHP和HTML编写WEB页面,当访问者浏览到该页面时,服务端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器。

但是与ASP或 ColdFusion不同,PHP是一种源代码开放程序,拥有很好的跨平台兼容性。用户可以在Windows NT系统以及许多版本的Unix系统上运行PHP,而且可以将PHP作为Apache服务器的内置模块或CGI程序运行。除了能够精确的控制WEB页面的显示内容之外,用户还可以通过使用PHP发送HTTP报头。用户可以通过PHP设置cookies,管理用户身份识别,并对用户浏览页面进行重定向。PHP具有非常强大的数据库支持功能,能够访问几乎目前所有较为流行的数据库系统。此外,PHP可以与多个外接库集成,为用户提供更多的实用功能,如生成PDF文件等。虽然很多人对PHP正则表达式已经很熟悉了,不过作为重要的基础部分,笔记还是不能免掉的。

PHP正则表达式介绍:

1.中括号

<ol class="dp-xml">
<li class="alt"><span><span>[0-9]匹配0-9  </span></span></li>
<li class=""><span>[a-z]匹配a-z小写字母  </span></li>
<li class="alt"><span>[A-Z]匹配A-Z大写字母  </span></li>
<li class=""><span>[a-zA-Z]匹配所有大小写字母  </span></li>
<li class="alt"><span>可以使用ascii来制定更多 </span></li>
</ol>
Copier après la connexion

2.量词

<ol class="dp-xml">
<li class="alt"><span><span>p+匹配至少一个含p的字符串  </span></span></li>
<li class=""><span>p*陪陪任何包含0个或多个p的字符串  </span></li>
<li class="alt"><span>p?匹配任何包含0个或一个p的字符串  </span></li>
<li class=""><span>p{2}匹配包含2个p的序列的字符串  </span></li>
<li class="alt"><span>p{2,3}匹配任何包含2个或3个的字符串  </span></li>
<li class=""><span>p$匹配任何以p结尾的字符串  </span></li>
<li class="alt"><span>^p匹配任何以p开头的字符串  </span></li>
<li class=""><span>[^a-zA-Z]匹配任何不包含a-zA-Z的字符串  </span></li>
<li class="alt"><span>p.p匹配任何包含p、接下来是任何字符、再接下来有又是p的字符串  </span></li>
<li class=""><span>^.{2}$匹配任何值包含2个字符的字符串  </span></li>
<li class="alt">
<span></span><strong><font color="#006699"><span class="tag"><span class="tag-name">b</span><span class="tag">></span></span></font></strong><span>(.*)</span><strong><font color="#006699"><span class="tag"><span class="tag-name">b</span><span class="tag">></span></span></font></strong><span>匹配任何被</span><strong><font color="#006699"><span class="tag"><span class="tag-name">b</span><span class="tag">></span><span class="tag"><span class="tag">></span></span></span></font></strong><span>包围的字符串  </span>
</li>
<li class=""><span>p(hp)*匹配任何一个包含p,后面是多个或0个hp的字符串 </span></li>
</ol>
Copier après la connexion

3.预定义字符范围

<ol class="dp-xml">
<li class="alt"><span><span>[:alpha:]同[a-zA-Z]  </span></span></li>
<li class=""><span>[:alnum:]同[a-zA-Z0-9]  </span></li>
<li class="alt"><span>[:cntrl:]匹配控制字符,比如制表符,反斜杠,退格符  </span></li>
<li class=""><span>[:digit:]同[0-9]  </span></li>
<li class="alt"><span>[:graph:]所有ASCII33~166范围内可以打印的字符  </span></li>
<li class=""><span>[:lower:]同[a-z]  </span></li>
<li class="alt"><span>[:punct:]标点符号  </span></li>
<li class=""><span>[:upper:]同[A-Z]  </span></li>
<li class="alt"><span>[:space:]空白字符,可以是空格、水平制表符、换行、换页、回车  </span></li>
<li class=""><span>[:xdigit:]十六进制符同[a-fA-F0-9] </span></li>
</ol>
Copier après la connexion

4.ereg语句可以区分大小写来判断,下例

<ol class="dp-xml"><li class="alt"><span><span>if (ereg("([^a-z])","aaaaZaaaaaaa")) echo "不全是小写的!"; </span></span></li></ol>
Copier après la connexion

ereg还可以返回一个数组 例如

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute"><font color="#ff0000">url</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"http://www.xuandun.net"</font></span><span>;  </span></span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">a</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">ereg</font></span><span>("^(http://www).([[:alnum:]]+).([[:alnum:]]+)",$url,$regs);  </span>
</li>
<li class="alt">
<span>echo $regs[0],"</span><strong><font color="#006699"><span class="tag"><span class="tag-name">br</span><span class="tag">></span></span></font></strong><span>";  </span>
</li>
<li class="">
<span>echo $regs[1],"</span><strong><font color="#006699"><span class="tag"><span class="tag-name">br</span><span class="tag">></span></span></font></strong><span>";  </span>
</li>
<li class="alt">
<span>echo $regs[2],"</span><strong><font color="#006699"><span class="tag"><span class="tag-name">br</span><span class="tag">></span></span></font></strong><span>";  </span>
</li>
<li class="">
<span>echo $regs[3],"</span><strong><font color="#006699"><span class="tag"><span class="tag-name">br</span><span class="tag">></span></span></font></strong><span>"; </span>
</li>
</ol>
Copier après la connexion

得到

<ol class="dp-xml">
<li class="alt"><span><span>http://www.xuandun.net  </span></span></li>
<li class=""><span>http://www  </span></li>
<li class="alt"><span>xuandun  </span></li>
<li class=""><span>net  </span></li>
</ol>
Copier après la connexion

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Configuration du projet CakePHP Configuration du projet CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Date et heure de CakePHP Date et heure de CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

CakePHP travaillant avec la base de données CakePHP travaillant avec la base de données Sep 10, 2024 pm 05:25 PM

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

Téléchargement de fichiers CakePHP Téléchargement de fichiers CakePHP Sep 10, 2024 pm 05:27 PM

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Routage CakePHP Routage CakePHP Sep 10, 2024 pm 05:25 PM

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

Discuter de CakePHP Discuter de CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

CakePHP créant des validateurs CakePHP créant des validateurs Sep 10, 2024 pm 05:26 PM

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.

See all articles