2206 |
Like recursive subpatterns, a subroutine call is always treated as an atomic |
Like recursive subpatterns, a subroutine call is always treated as an atomic |
2207 |
group. That is, once it has matched some of the subject string, it is never |
group. That is, once it has matched some of the subject string, it is never |
2208 |
re-entered, even if it contains untried alternatives and there is a subsequent |
re-entered, even if it contains untried alternatives and there is a subsequent |
2209 |
matching failure. Any capturing parentheses that are set during the subroutine |
matching failure. Any capturing parentheses that are set during the subroutine |
2210 |
call revert to their previous values afterwards. |
call revert to their previous values afterwards. |
2211 |
.P |
.P |
2212 |
When a subpattern is used as a subroutine, processing options such as |
When a subpattern is used as a subroutine, processing options such as |
2291 |
failing negative assertion, they cause an error if encountered by |
failing negative assertion, they cause an error if encountered by |
2292 |
\fBpcre_dfa_exec()\fP. |
\fBpcre_dfa_exec()\fP. |
2293 |
.P |
.P |
2294 |
If any of these verbs are used in an assertion or subroutine subpattern |
If any of these verbs are used in an assertion or subroutine subpattern |
2295 |
(including recursive subpatterns), their effect is confined to that subpattern; |
(including recursive subpatterns), their effect is confined to that subpattern; |
2296 |
it does not extend to the surrounding pattern. Note that such subpatterns are |
it does not extend to the surrounding pattern. Note that such subpatterns are |
2297 |
processed as anchored at the point where they are tested. |
processed as anchored at the point where they are tested. |