我想搜索并替换a中的某些数字 文本文件,用空格分隔 将它们合并在一起
喜欢
asdf asdf 1 2
3 asdf asdf asdf
2 3 asdf
到
asdf asdf 123
asdf asdf asdf
23 asdf
我尝试了以下操作,但它不起作用,我不确定如何最好地在文件中进行替换:
text = File.read("testfile.txt")
p text.scan(/([\d+\s+\d+]+)/)
答案 0 :(得分:1)
实际上,您不需要\d+
。 \d
就足够了。
gsub(/(\d)\s+(?=\d)/, '\1')
如果您安装了oniguruma或正在使用ruby1.9,
gsub(/(?<=\d)\s+(?=\d)/, '')
答案 1 :(得分:1)
FN = 'thefile'
result = File.read(FN).gsub /(\d)\s+(?=\d)/, '\1'
open(FN, 'w') { |io| io.write(result) }