> 백엔드 개발 > PHP 튜토리얼 > php中Warning: preg_match_all(): 컴파일 실패: lookbehind 어설션

php中Warning: preg_match_all(): 컴파일 실패: lookbehind 어설션

WBOY
풀어 주다: 2016-07-25 08:46:43
원래의
2171명이 탐색했습니다.
今天在测试正则表达式中相关环视的代码时,发现有个错误
错误信息如下:
Warning: preg_match_all(): Compilation failed: lookbehind assertion is not fixed length at offset
代码如下:
  1. $str='
    info
    strong';
  2. preg_match_all('/(?<=<(w )[^>]*>).*(?=)/',$str,$match);
  3. var_dump($match);
复制代码
执行上面的代码就会报错,在网上查看下,说php中逆序环视(包括逆序肯定环视 ?<=exp、逆序否定环视 ?
将上面的代码改为:
  1. $str='
    info
    strong';
  2. preg_match_all('/(?<=<(w)>).*(?=)/',$str,$match);
  3. var_dump($match);
复制代码
但这种只能匹配b标签中strong内容
其实,不用环视来匹配,直接用分组来捕获内容,只是这样要在返回的结果中筛选一下
  1. $str='
    info
    strong';
  2. preg_match_all('/(<(w )[^>]*>)(.*)()/',$str,$match);
  3. print_r($match[3]);//Array ( [0] => info [1] => strong )
复制代码




원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿