複数のトピックでコンテンツをRegexで置換?

こんにちは。

インポートしたコンテンツの多くに、インポートしたトピック内に次のような古いドメインへのリンクがあります。

https://domain.com/threads/xxxx

ここで、xxxx は 4 桁のスレッド番号を表します。

これを 3,000 を超えるトピックすべてから一括で削除するには、どのような方法が最適でしょうか。

こんにちは。

こちらがお役に立つはずです。

「いいね!」 1

ありがとうございます!

rake posts:delete_word['^http:\/\/domain.com\/threads\/.*.\/$','regex']

は0件の結果しか表示されません。どこが間違っているか分かりますか?

試してください:

rake posts:delete_word['https?://domain\\.com/threads/\\\\d{4}','regex']

素晴らしい!完璧に機能しました。リンクされていた投稿を読んで、RGB BBコードを削除するための正規表現を作成しようとしています。

RegExビルダーによると、私の正規表現は有効です。

しかし、実行すると、0件の投稿が更新されるか、無効な正規表現であるというエラーが発生します。

トピック内のBBコードは次のようになっています。

[COLOR=rgb(95, 66, 222)]

これも試しました。

rake posts:delete_word[‘[\WCOLOR=rgb\((\d{1,3}), (\d{1,3}), (\d{1,3})(, ){0,1}(0(\.\d+)?|1(\.0+)?)\)]’,‘regex’]

リンクが機能する方が良いと思いませんか?ホスト名だけ変更することもできます。

この件について議論されていた別のトピックにある私の例を、レールで実行する方法として使用できます。また、正規表現の調整には http://rubular.com/ を使用できます。

「いいね!」 1