protected function scan($input) { if (!
isset($this->regex
)) { $this->regex =
sprintf( '/(%s)|%s/%s',
implode(')|(',
$this->
getCatchablePatterns()),
implode('|',
$this->
getNonCatchablePatterns()),
$this->
getModifiers() );
} $flags = PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_OFFSET_CAPTURE;
$matches =
preg_split($this->regex,
$input, -1,
$flags);
if ($matches === false
) { // Work around https://bugs.php.net/78122
$matches =
[[$input, 0
]];
}