Оскільки ви використовуєте кількісно визначений субпідряд, як описано в Perl Doc ,
За замовчуванням кількісно визначений субпатерн є " жадібним ", тобто він збігатиметься якомога більше разів (з урахуванням конкретного вихідного місця), в той же час залишаючи відповідність решті шаблону. Якщо ви хочете, щоб він
відповідав мінімально можливій кількості разів , виконайте кількісний показник із знаком
"?" . Зауважте, що значення не змінюються, лише "жадібність":
*? //Match 0 or more times, not greedily (minimum matches)
+? //Match 1 or more times, not greedily
Таким чином, щоб дозволити вашому кількісно визначеному шаблону домогтися мінімальної відповідності, дотримуйтесь цього ?
:
/location="(.*?)"/