替换ruby中的内容文件

时间:2016-08-18 19:53:24

标签: ruby file replace directory

我想在所有文件中用ruby中的空格和空格替换一些文本。

toReplace = [

'<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"pl\" xml:lang=\"pl\"> 

<head>'
]

replacement = [

'<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">'
]

我使用gsub,但它没有用,因为空格和空格有问题。

contents.gsub! toReplace[i], replacement[i]

我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以尝试转义第一个字符串,以避免任何字符被视为特殊字符:

REPLACE = Regexp.escape(%Q[<!DOCTYPE...
])

WITH = %Q[
  ...
]

contents.gsub!(REPLACE, WITH)

请注意,您应该使用字符串或正则表达式,而不是代码中的数组。