Шаблон соответствия без обратного отслеживания
создает шаблон, который не выполняет обратную трассировку в пределах newpat = possessivePattern(pat)pat однажды pat спички.
Если символ может быть сопоставлен с несколькими шаблонами в выражении, например цифровыми символами с alphanumericsPattern + digitsPatternвсе возможные комбинации совпадений могут быть проверены в попытке найти успешное совпадение. Этот процесс называется обратным отслеживанием.
possessivePattern предотвращает обратное отслеживание, поэтому один раз possessivePattern соответствует, сопоставленный текст больше не может быть сопоставлен с другими частями выражения шаблона, даже если это приводит к несоответствию шаблона. Использовать possessivePattern улучшить производительность путем ограничения возможных комбинаций шаблонов, протестированных для поиска соответствия.