mirror of
https://github.com/php/php-src.git
synced 2024-12-04 23:34:25 +08:00
preg_match_all() now returns the number of global matches.
This commit is contained in:
parent
88029643d0
commit
aba3ea97cd
@ -380,6 +380,7 @@ void _pcre_match(INTERNAL_FUNCTION_PARAMETERS, int global)
|
||||
piece = subject->value.str.val;
|
||||
subject_end = piece + subject->value.str.len;
|
||||
match = NULL;
|
||||
matched = 0;
|
||||
|
||||
do {
|
||||
/* Execute the regular expression. */
|
||||
@ -396,7 +397,7 @@ void _pcre_match(INTERNAL_FUNCTION_PARAMETERS, int global)
|
||||
|
||||
/* If something has matched */
|
||||
if (count >= 0) {
|
||||
matched = 1;
|
||||
matched++;
|
||||
match = piece + offsets[0];
|
||||
|
||||
/* If subpatters array has been passed, fill it in with values. */
|
||||
@ -445,10 +446,6 @@ void _pcre_match(INTERNAL_FUNCTION_PARAMETERS, int global)
|
||||
piece += offsets[1];
|
||||
}
|
||||
}
|
||||
/* If nothing matched */
|
||||
else {
|
||||
matched = 0;
|
||||
}
|
||||
} while (global && count >= 0);
|
||||
|
||||
/* Add the match sets to the output array and clean up */
|
||||
|
Loading…
Reference in New Issue
Block a user