Rumah  >  Artikel  >  pembangunan bahagian belakang  >  深入解析PHP正则模式修正符

深入解析PHP正则模式修正符

醉折花枝作酒筹
醉折花枝作酒筹asal
2021-03-22 14:56:001591semak imbas

今天我们就向大家具体讲解了PHP正则模式修正符的相关概念,希望对大家有所帮助。 模式修正符:模式修正符是标记在整个模式之外的。模式修正符中有几个常用的,分别是I、m、s、U,下面我们来具体了解一下。

深入解析PHP正则模式修正符

修正符i

进行匹配时不区分大小写,//如:"/abc/i"可以与abc或aBC或ABc等匹配;

修正符m

多行匹配,如果目标字符串中没有”\n”字符,或者模式中没有出现^或$,设置这个修饰符不产生任何影响;使用这个修正符的时候应该注意:第一,目标字符串中必须包含“\n”,在字符串中出现“\n”就表示新的一行开始,在windows操作系统中所看到的换行(现象)其实是通过两个字符(\r\n)来完成的,在linux操作系统中看到的换行(现象),就是通过\n来完成的;第二,正则表达式中必须出现^或者$;

修正符s

如果设定了此修正符,那么将匹配所有的字符包括换行符;

$pattern='/t.st/s';
$str='t\nsttesttestetest';
var_dump(preg_match_all($pattern,$str,$arr));
var_dump($arr);

修正符U

禁止贪婪匹配,不重复匹配;

$pattern='/t.*t/U';
$str='t\nttestthstetelt';
var_dump(preg_match_all($pattern,$str,$arr));
var_dump($arr);

【推荐学习:PHP视频教程

Atas ialah kandungan terperinci 深入解析PHP正则模式修正符. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn