Я пытаюсь заменить часть страницы внешним контентом на лету.Строка # gsub испортила замену?
Вот source.html
:
<!DOCTYPE html>
<html>
<head>
<%= foobar %>
</head>
<body>
This is body
</body>
</html>
И строка замены inject.js
:
var REGEXP = /^\'$/i; var foo = 1;
рубин код, который выводит файл путем объединения обоих.
pageContent = File.read('./source.html')
jsContent = File.read('./inject.js');
output = pageContent.gsub("<%= foobar %>", jsContent)
File.open('./dest.html', "w+") do |f|
f.write(output)
end
Однако я получаю перепутались dest.html
, который происходит в inject.js
из-за \'
.
<!DOCTYPE html>
<html>
<head>
var REGEXP = /^
</head>
<body>
This is body
</body>
</html>$/i; var foo = 1;
</head>
<body>
This is body
</body>
</html>
Как я могу избавиться от этой проблемы?