特定のファイルへのハイパーリンクを持つhtmlファイルがあります。私はこのファイル内のすべてのhrefリンクを見つけて、リンクをファイルへの絶対パスで置き換えたいと考えています。私はラインによってhtmlファイルの行を読んでいますので、一行は、HREFの複数のオカレンスを持つことができますpythonのテキストを検索して置換する
<BR><CENTER><TABLE BORDER=1 CELLPADDING=0 NOSAVE><TR ALIGN=CENTER NOSAVE><TD COLSPAN="4" NOSAVE><CENTER><B>Summary Table</B></CENTER><TR><TD>Testname</TD><TD>Status</TD><TD>Link to HTML</TD><TD>Utility</TD></TR><TR><TD>test1</TD><TD>FAIL</TD><TD><a href=common?htmlview=1&file="absolute_path to abc.html">HTML_report</a></BR></TD><TD>run</TD></TR><TR><TD>31Jan2017_03h12m52s</TD><TD>FAIL</TD><TD><a href=common?htmlview=1&file="absolute_path to def.html">HTML_report</a></BR></TD><TD>run_2</TD></TR></TABLE></CENTER><BR>
-
<BR><CENTER><TABLE BORDER=1 CELLPADDING=0 NOSAVE><TR ALIGN=CENTER NOSAVE><TD COLSPAN="4" NOSAVE><CENTER><B>Summary Table</B></CENTER><TR><TD>Testname</TD><TD>Status</TD><TD>Link to HTML</TD><TD>Utility</TD></TR><TR><TD>test1</TD><TD>FAIL</TD><TD><A HREF= abc.html>HTML_report</a></BR></TD><TD>run</TD></TR><TR><TD>31Jan2017_03h12m52s</TD><TD>FAIL</TD><TD><A HREF=def.html>HTML_report</a></BR></TD><TD>run_2</TD></TR></TABLE></CENTER><BR>
交換した後、これは次のようになります。 私が見つけ、場所ためにre.subを使用して試してみました -
re.sub(r'\sA\sHREF\s','a href=common?htmlview=1&file=<path>',line)
は、なぜあなたは正規表現でHTMLを解析しているとのlibを使用して、HTMLを操作するために正規表現を使用しようとしないのですか? – jonrsharpe
ただ、htmlをregex [これらの理由から](http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags)で解析するのではありません。 [beautifulsoup](https://www.crummy.com/software/BeautifulSoup/bs4/doc/)を使用することができます。 – MYGz
...質問がありましたか? – melpomene