[解決済み] ファイルのテキストをパターン検索し、指定された値で置き換える方法
2022-07-28 01:23:15
質問
ファイル(またはファイルのリスト)をパターン検索し、見つかった場合はそのパターンを与えられた値で置き換えるスクリプトを探しています。
考えていますか?
どのように解決するのですか?
免責事項です。 このアプローチは Ruby の能力を素朴に示すものであり、ファイル中の文字列を置き換えるためのプロダクショングレードのソリューションではありません。クラッシュ、割り込み、ディスクが一杯になった場合のデータ損失など、さまざまな障害シナリオが発生する可能性があります。このコードは、すべてのデータをバックアップしておくような、一回限りの簡単なスクリプト以上のものには適さない。そのため このコードをあなたのプログラムにコピーしないでください。
簡単にできる方法を紹介します。
file_names = ['foo.txt', 'bar.txt']
file_names.each do |file_name|
text = File.read(file_name)
new_contents = text.gsub(/search_regexp/, "replacement string")
# To merely print the contents of the file, use:
puts new_contents
# To write changes to the file, use:
File.open(file_name, "w") {|file| file.puts new_contents }
end
関連
-
[解決済み] Git リポジトリで削除されたファイルを検索して復元する方法
-
[解決済み] Microsoft Officeをインストールせずに、C#でExcel(.XLSおよび.XLSX)ファイルを作成するにはどうすればよいですか?
-
[解決済み] ファイルを作成し、書き込むにはどうすればよいですか?
-
[解決済み] 出力をファイルや標準出力にリダイレクトする方法
-
[解決済み] Python の open() はファイルが存在しない場合、ファイルを作成しない
-
[解決済み] Javaで既存のファイルにテキストを追加する方法は?
-
[解決済み] N日以上前のファイルを削除するバッチファイル
-
[解決済み] node.jsでファイルを1行ずつ読み込む?
-
[解決済み] なぜsumはinject(:+)よりもずっと速いのですか?
-
[解決済み] Rubyの継承とミキシンの比較
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] なぜsumはinject(:+)よりもずっと速いのですか?
-
[解決済み] Rubyでシングルクォートとダブルクォートを使い分けるとパフォーマンスが上がりますか?
-
[解決済み] Rubyの継承とミキシンの比較
-
[解決済み] Hash each ループでインデックスにアクセスすることは可能ですか?
-
[解決済み] rvm use 2.0.0 --default を実行すると、"Warning! PATH is not properly set up" と表示される。
-
[解決済み] key => "value"`と`key: "value"`のハッシュ表記に違いはありますか?
-
[解決済み] Rubyで空のファイルを作成する:"touch "と同等?
-
[解決済み] ハッシュの配列をハッシュの値でソートするにはどうしたらいいですか?
-
[解決済み] 文字列を正規表現に変換する ruby
-
[解決済み] ルビー 負の数を正の数に変換する?