0

たくさんの静的なhtmlファイル内でさまざまな検索と置換を行う必要があります。私が思いついた問題の1つは、実際に検索/置換したいのがテキストノードだけであるときにURLで一致が得られることです。

そのため、正規表現を使用してhtmlを解析しているため、正規表現がより困難になり、エラーが発生しやすくなります。

テキストノードのみで検索/置換を行う最も簡単な方法は何ですか?Python-Java-Ruby-Headless-Phantom-PHP-Node-FluxCapacitorでマスターを必要とせずに、数分以内に稼働できるように話しています。

モロンと話しているようにアドバイスしてください。

私はWindows7を使用しています。

私が探しているのは、Notepad++の検索/置換機能のようなものです。検索を開始するディレクトリを指定すると、再帰的に検索され、指定したすべての種類のファイル(.htmlや.shtmlなど)にアクセスして、検索対象と置換対象を指定します。それが実行され、10秒または15秒後に、一挙に数百のファイルを編集した可能性があります。あなたが知っている、死んだ単純なもの。

それが私がやりたいことですが、テキストノード内で検索/置換するだけです。

4

2 に答える 2

0

SublimeText 2 には非常に強力なテキスト検索機能がいくつかあり、説明どおりに実行できるようにする必要があります。そのため、正しい方向に向けることができると思いますが、私自身はまだ使用方法を学んでいますが、 「ファイルを検索」オプションは、選択した単語をさまざまなファイルで取得して置き換えることができることを意味しますが、変更する必要のない無関係なものを除外する方法が見つかりませんでした。うまくいけば、他の誰かがやって来て、あなたを啓発してくれるでしょう。

元の投稿に「Sublime text 2」というタグを追加して、対象を広げることをお勧めします。

于 2013-02-22T01:01:58.843 に答える
0

http://htql.netで Python と HTQL を使用できます。いくつかの例:

page="<html> <body> <table> <tr><td id='cell1'> test1 </td></tr> <tr> <td id='cell2'> test2 </td> </tr> </table> </body> </html>"

import htql
print(htql.query(page, "<td (id='cell1')>:tx &replace('XXXX') "))
#[("<html> <body> <table> <tr><td id='cell1'>XXXX</td></tr> <tr> <td id='cell2'> test2 </td> </tr> </table> </body> </html>",)]

print(htql.query(page, "<td (id='cell1')>:id &replace('ZZZZ') "))
#[("<html> <body> <table> <tr><td id='ZZZZ'> test1 </td></tr> <tr> <td id='cell2'> test2 </td> </tr> </table> </body> </html>",)]

print(htql.query(page, "<td (id like 'cell%')>:tx &replace('YYYY') "))
#[("<html> <body> <table> <tr><td id='cell1'>YYYY</td></tr> <tr> <td id='cell2'>YYYY</td> </tr> </table> </body> </html>",)]
于 2013-02-26T04:37:02.330 に答える