Hi,there
If I have file and has a line is “aaa=100”, and need to replace it as
“aaa=4”.
Is there a way to do it without iterating each line and find the match,
then replace it? Thank in advance
Hi,there
If I have file and has a line is “aaa=100”, and need to replace it as
“aaa=4”.
Is there a way to do it without iterating each line and find the match,
then replace it? Thank in advance
If I have file and has a line is “aaa=100”, and need to replace it as
“aaa=4”.
puts File.read(‘somefile’)
foo
aaa=100
bar
puts File.read(‘somefile’).sub(‘aaa=100’, ‘aaa=4’)
foo
aaa=4
bar
Tor Erik
I need “aaa=4” in the file instead of just print out
Tor Erik L. wrote:
If I have file and has a line is “aaa=100”, and need to replace it as
“aaa=4”.puts File.read(‘somefile’)
foo
aaa=100
barputs File.read(‘somefile’).sub(‘aaa=100’, ‘aaa=4’)
foo
aaa=4
barTor Erik
On Wednesday 28 May 2008 18:18:09 Cheyne Li wrote:
I need “aaa=4” in the file instead of just print out
No offense, but this was pretty much handed to you. You should be able
to get
the rest of the way yourself…
print File.read(‘somefile’).sub(‘aaa=100’, ‘aaa=4’)
string = File.read(‘somefile’).sub(‘aaa=100’,‘aaa=4’)
open(‘somefile’,‘w’){|f| f.write string}
By the way: DON’T do it this way in a real program. It’s not at all
safe.
Learn about temporary files and file IO.
Cheyne Li wrote:
I need “aaa=4” in the file instead of just print out
File.open(‘somefile’, ‘r+’) do |file|
content = file.read.sub(‘aaa=100’, ‘aaa=4’)
file.seek(0)
file.write(content)
}
Read more about File at
http://www.ruby-doc.org/core/classes/File.html
although this documentation isn’t the easiest to follow.
Tor Erik
Hi,
Cheyne Li wrote:
Hi,there
If I have file and has a line is “aaa=100”, and need to replace it as
“aaa=4”.
Is there a way to do it without iterating each line and find the match,
then replace it? Thank in advance
ruby -i -pe’gsub(/aaa=100/,“aaa=4”)’ somefile
Regards,
Park H.
Thanks a lot, it really helped. But I don’t know why if i use regular
expression to match the pattern “aaa=.*”, it’s not working with sub, but
gsub.
Tor Erik L. wrote:
Cheyne Li wrote:
I need “aaa=4” in the file instead of just print out
File.open(‘somefile’, ‘r+’) do |file|
content = file.read.sub(‘aaa=100’, ‘aaa=4’)
file.seek(0)
file.write(content)
}Read more about File at
class File - RDoc Documentationalthough this documentation isn’t the easiest to follow.
Tor Erik
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs