私はprivoxyと何かを交換する方法を知っています。たとえば、次のようになります。
s/class="node ad"/class="node ad" style="display:none"/g
しかし、privoxyを使って行を削除する方法は?例: 行に以下が含まれている場合:
RANDOM STRING BEFORE<a href="/forum/100">Offtopic</a></td>RANDOM STRING AFTER
では、その行を削除するには、 user.action ファイルに何を書く必要がありますか?
Privoxyでこの「sed」効果を探しています。
echo -e "asdf\nsomething2\nadf" | sed '/thing2/d;'
user.filter ファイルで "/Offtopic/d" を使用しても機能しません。 (はい、user.filterには完全に機能する他のルールがあります。)
答え1
正規表現について読んでみたいかもしれません。投稿した行は正規表現です。
s/class="node ad"/class="node ad" style="display:none"/g
これは、「最初の文字列のすべての項目を2番目の文字列に置き換える」ことを意味します。
何かを削除するには、次のように2番目の文字列を空白のままにします。
s/class="node ad"//g
これにより、その文字列がすべて削除されます。
行全体を一致させるには、次を使用できます。
s/^.*some_string.*$//g
ここで^
は、「行の始まり」を意味する特殊文字、$
「行の終わり」を意味し、.
すべての文字を意味し、*
その文字が0個以上繰り返されることを意味します。
したがって、「すべての文字のゼロ以上の反復」、「some_string」、および再び「ゼロ以上のすべての文字の反復」と一致します(必要に応じて実行する必要があります)。
答え2
Privoxyについてはわかりませんが、上記の交換ドアからできる働く:
s/^.*<a href="/forum/100">Offtopic</a></td>.*$//