php中Warning: preg_match_all(): Compilation failed: lookbehind assertion
Release: 2016-07-25 08:46:43
Original
2169 people have browsed it
Today when I was testing the code related to looking around in regular expressions, I found an error
The error message is as follows:
Warning: preg_match_all(): Compilation failed: lookbehind assertion is not fixed length at offset
The code is as follows:
- $str='
info strong';
- preg_match_all('/(?<=<(w+)[ ^>]*>).*(?=1>)/',$str,$match);
- var_dump($match);
Copy the code
Execute the above code An error will be reported. After checking online, it is said that reverse lookaround in PHP (including reverse positive lookaround?<=exp, reverse negative lookaround?
Change the above code to:
- $str='
info strong';
- preg_match_all('/(?<=< (w)>).*(?=1>)/',$str,$match);
- var_dump($match);
Copy code
But this can only match b Strong content in tags
Actually, you don’t need to look around to match, you can directly use grouping to capture the content. You just need to filter the returned results
- $str='
info strong b>';
- preg_match_all('/(<(w+)[^>]*>)(.*)(2>)/',$str,$match);
- print_r( $match[3]);//Array ( [0] => info [1] => strong )
Copy code
|
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31