我在Java中嵌入JRuby,因爲我需要用Java字符串作爲參數調用一些Ruby方法。關鍵是,我打電話這樣的方法:我可以用什麼字符來引用這個紅寶石字符串?
String text = ""; // this can span over multiple lines, and will contain ruby code
Ruby ruby = Ruby.newInstance();
RubyRuntimeAdapter adapter = JavaEmbedUtils.newRuntimeAdapter();
String rubyCode = "require \"myscript\"\n" +
"str = build_string(%q~"+text+"~)\n"+
"str";
IRubyObject object = adapter.eval(ruby, codeFormat);
的事情是,我不知道我能作爲分隔符使用的字符串,因爲如果Ruby代碼,我發送給build_string將包含紅寶石代碼。我知道我正在使用〜,但我認爲這可能會破壞我的代碼。我可以使用哪些字符作爲分隔符來確保無論Ruby代碼是什麼,我的代碼都能正常工作?
我將生成一個heredoc開始和結束的字符串。 – Geo 2009-06-14 10:36:25