가능한 중복은 :
In Ruby, can you perform string interpolation on data read from a file?외부 파일에서 문자열의 특정 부분을 변수로 정의 할 수 있습니까?
나는 몇 가지 '리'요소를 통해 루프를 필요
for i in 1..5
Xpaths.getPath("location","elements")
end
그런 다음, 모든 XPath의 때문에, 외부 파일에 있습니다 그러한 '요소'변수의 값은 다음과 같습니다.
{
"location":
{
"elements" :"//ul[@id='locations']/li[#{i}]/a"
}
}
요소 변수는 문자열로 읽히고 [# {i}]는 [1]과 같은 값으로 대체되지 않습니다. 외부 파일에있는 문자열의 특정 부분을 변수로 정의하는 방법이 있습니까?
감사합니다, 나는 일시적으로 해결할 당신이 XPath는 항목에 보간을 제한 할 수 있도록 더 좋은 방법은 간단한 정규 표현식 교체하고 포함 할 수 JSON 파일에서 언급 한 구문과 유사한 구문을 사용하여 문제를 해결 한 다음 루프 내에서 GSUB를 사용하여 문제를 해결하십시오. # => "// ul [@ id = 'locations']/li [__ INDEX __]/a" : for i 1..5 Xpaths.getPath ("location", "elements") .gsub (__ INDEX__, "# {i}") end 내가 일을하면서 EVAL 및 ERB를 월요일에 조사하는 것이 더 깨끗한 방법 일 수 있습니다. 것들 ... 고맙습니다! – mickael