module LineContaining
Constants
- VERSION
Public Class Methods
add_after(str_orig, str_add, path)
click to toggle source
# File lib/line_containing.rb, line 18 def self.add_after(str_orig, str_add, path) path_old = path path_new = "#{path_old}.new" file_w = File.open(path_new, 'w') File.readlines(path_old).each do |line| file_w.write(line) if line.include? str_orig file_w.write("\n") if line[-1] != "\n" file_w.write("#{str_add}\n") end end file_w.close system("rm #{path_old}") system("mv #{path_new} #{path_old}") end
add_before(str_orig, str_add, path)
click to toggle source
# File lib/line_containing.rb, line 5 def self.add_before(str_orig, str_add, path) path_old = path path_new = "#{path_old}.new" file_w = File.open(path_new, 'w') File.readlines(path_old).each do |line| file_w.write("#{str_add}\n") if line.include? str_orig file_w.write(line) end file_w.close system("rm #{path_old}") system("mv #{path_new} #{path_old}") end
delete(str_orig, path)
click to toggle source
# File lib/line_containing.rb, line 50 def self.delete(str_orig, path) path_old = path path_new = "#{path_old}.new" file_w = File.open(path_new, 'w') File.readlines(path_old).each do |line| if line.include? str_orig # Print NOTHING else file_w.write(line) end end file_w.close system("rm #{path_old}") system("mv #{path_new} #{path_old}") end
delete_between(str1, str2, path)
click to toggle source
# File lib/line_containing.rb, line 66 def self.delete_between(str1, str2, path) path_old = path path_new = "#{path_old}.new" file_w = File.open(path_new, 'w') to_delete = false File.readlines(path_old).each do |line| if line.include? str1 file_w.write(line) to_delete = true elsif line.include? str2 file_w.write(line) to_delete = false elsif to_delete == false file_w.write(line) end end file_w.close system("rm #{path_old}") system("mv #{path_new} #{path_old}") end
delete_between_plus(str1, str2, path)
click to toggle source
# File lib/line_containing.rb, line 87 def self.delete_between_plus(str1, str2, path) delete_between(str1, str2, path) delete(str1, path) delete(str2, path) end
replace(str_orig, str_new, path)
click to toggle source
# File lib/line_containing.rb, line 34 def self.replace(str_orig, str_new, path) path_old = path path_new = "#{path_old}.new" file_w = File.open(path_new, 'w') File.readlines(path_old).each do |line| if line.include? str_orig file_w.write("#{str_new}\n") else file_w.write(line) end end file_w.close system("rm #{path_old}") system("mv #{path_new} #{path_old}") end