正确格式化Java String以适合JavaScript变量

时间:2011-08-26 16:09:07

标签: java javascript string format

我对Java很新,假设我有一个包含多个内容的字符串(引号,双引号,新行等等)

我想“编码”该字符串,以便我可以安全地将其输出到JavaScript代码段中,如:

var test = '<%= myJavaString %>';

所以如果像{new}这样的myJavaString中有任何特殊字符,例如

String myJavaString = "hello\neveryone\nof the\nworld";

我不希望我的JavaScript源代码如下:

var test = 'hello
everyone
of the
world';

任何内置函数!?

谢谢!

2 个答案:

答案 0 :(得分:4)

查看Apache commons-lang StringEscapeUtils类。它有一个escapeEcmaScript方法,可以将换行符转换为\n,还可以使用制表符,引号和双引号字符。

答案 1 :(得分:0)

好吧,我不确定你是否可以使用任何内置方法,但写一个可能不会太难。请注意,您只需将\n替换为\\n即可将其从“特殊”字符更改为\和n。

您可能想要使用regular expressions。可悲的是,我不是正则表达的最佳人选,所以我可能不是帮助你的最佳人选。