Я новичок в regex, поэтому, пожалуйста, потерпите меня.
У меня есть следующая строка:
<p style="text-align: right;"><strong> *owner_name_2* </strong><strong> "*tenant_name_2*" "*tenant_name_1*" </strong></p>
<p style="text-align: right;"><strong> <img src="https://cdn.tiny.cloud/1/4wpqwjufbcfqlazualjk6yq6y1fqo9rbr5x9lcbd1tm1dumk/tinymce/5/*owner_signature_2*" alt="*owner_signature_2*" width="200" height="200" /> <img src="https://cdn.tiny.cloud/1/4wpqwjufbcfqlazualjk6yq6y1fqo9rbr5x9lcbd1tm1dumk/tinymce/5/*tenant_signature_2*" alt="*tenant_signature_2*" width="200" height="200" /> <img src="https://cdn.tiny.cloud/1/4wpqwjufbcfqlazualjk6yq6y1fqo9rbr5x9lcbd1tm1dumk/tinymce/5/*tenant_signature_1*" alt="*tenant_signature_1*" width="200" height="200" /></strong></p>
<p style="text-align: right;"> </p>
Используя regex, я хочу захватить только источник тегов изображения. например (https://cdn.tiny.cloud/1/4wpqwjufbcfqlazualjk6yq6y1fqo9rbr5x9lcbd1tm1dumk/tinymce/5/ tenant_signature_2 )
Пока у меня есть этот шаблон src\s*=\s*"(.*?\/*tenant_signature\/*.*?)"
, где он должен возвращать все URL, в которых есть "tenant_signature" .
Однако, что я получаю, это:
1 => array:2 [
0 => "https://cdn.tiny.cloud/1/4wpqwjufbcfqlazualjk6yq6y1fqo9rbr5x9lcbd1tm1dumk/tinymce/5/*owner_signature_2*" alt="*owner_signature_2*" width="200" height="200" /> <img src="https://cdn.tiny.cloud/1/4wpqwjufbcfqlazualjk6yq6y1fqo9rbr5x9lcbd1tm1dumk/tinymce/5/*tenant_signature_2*"
1 => "https://cdn.tiny.cloud/1/4wpqwjufbcfqlazualjk6yq6y1fqo9rbr5x9lcbd1tm1dumk/tinymce/5/*tenant_signature_1*"
]
Есть идеи, почему я получаю URL-адрес, который тоже имеет "owner_signature" в первом захвате?
Я попытался добавить «^» и «$» в начале и конце шаблона, чтобы отметить начало и конец строки. Но тогда это ничего не захватит.
PS: я использую preg_match_all()
для получения совпадений.
Заранее спасибо:)