Heim > Backend-Entwicklung > PHP-Tutorial > PHP怎么实现正则匹配所有括号中的内容

PHP怎么实现正则匹配所有括号中的内容

PHPz
Freigeben: 2020-09-04 14:01:50
Original
4161 Leute haben es durchsucht

PHP实现正则匹配所有括号中的内容的方法:首先创建一个PHP文件;然后输入PHP正则匹配代码,如:“preg_match_all($strPattern, $strSubject, $arrMatches);”;最后运行该文件即可。

PHP怎么实现正则匹配所有括号中的内容

PHP怎么实现正则匹配所有括号中的内容?

正则表达式:(?<=【)[^】]+

注:以匹配中文括号中内容为例,如果匹配非中文括号,则需要在括号前增加转义符

PHP实现示例:

<?php
    $strSubject = "abc【111】abc【222】abc【333】abc";
    $strPattern = "/(?<=【)[^】]+/";
    $arrMatches = [];
    preg_match_all($strPattern, $strSubject, $arrMatches);
    var_dump($arrMatches);
Nach dem Login kopieren

执行结果:

~ » php mytest/test_preg.php                                                                                 iwaimai@bogon
array(1) {
 [0]=>
 array(3) {
  [0]=>
  string(3) "111"
  [1]=>
  string(3) "222"
  [2]=>
  string(3) "333"
 }
}
Nach dem Login kopieren

解析:

1、(?<=【)

第一个表达式是一个『非获取匹配』,即匹配括号,但并不获取括号;

5f8faac57d7eb962a66564a5e95297d.png

2、[^】]+

第二个表达式中[]匹配单个字符,^】代表除了】的字符,+是限定符代表匹配前面子表达式一次或多次,即匹配除了】的连续多个字符;

组合起来即实现了预期效果~

更多相关知识,请访问PHP中文网

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage