регулярное выражение для href, чтобы добавить цель = "_ blank" - PullRequest
0 голосов
/ 19 ноября 2010

Я посмотрел напрасно, и мне нужно получить какой-нибудь связанный текст и добавить к нему target = "_ blank".Я не могу использовать js, поскольку он используется для рассылки новостей.

Связанный текст может быть просто словом, или это может быть URL-адрес, который связан.ссылку, а затем воссоздать ее с target = "_ blank" в ..

Есть идеи?

Просто чтобы уточнить.У меня есть: text или http://somelink.com/etc, и мне нужно добавить к нему target_blank, не меняя ничего другого.Js был бы идеальным, но не работал бы.

Я использую django и хотел создать какой-то фильтр ссылок

Ответы [ 2 ]

0 голосов
/ 19 ноября 2010

Если вы не хотите делать это с помощью регулярного выражения, вы можете

>>> import re

>>> link = """<a href="somesite">This is the link to some site</a>"""

>>> e = re.sub(r'<a(?P<in_a>[^>]+)>(?P<in_link>[^<]+)</a>',
       r'<a \g<in_a> target="_blank" > \g<in_link> </a>',
       link,
       )
>>> print e
<a  href="somesite" target="_blank" > This is the link to some site </a>
0 голосов
/ 19 ноября 2010

Возможно что-то вроде pyquery ?

>>> from pyquery import PyQuery
>>> d = PyQuery('<a href="http://google.com">My Link</a>')
>>> print d('a').attr('target', '_blank')
<a href="http://google.com" target="_blank">My Link</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...