5
'\' 'n'のような文字シーケンスを '\ n'に変換するソリューションを探しています( '\ t'、 '\ r '、' \ n 'など)ホワイトスペースへの空白文字シーケンス
これを行うには何か巧妙なやり方がありますか?
'\' 'n'のような文字シーケンスを '\ n'に変換するソリューションを探しています( '\ t'、 '\ r '、' \ n 'など)ホワイトスペースへの空白文字シーケンス
これを行うには何か巧妙なやり方がありますか?
いいえ、一度コンパイルすると"\\n"
は"\n"
afaikとは関係ありません。次のように私がやって何かを示唆している:
ピュアJavaの:ApacheのコモンズStringEscapeUtilsを使用して
String input = "\\n hello \\t world \\r";
String from = "ntrf";
String to = "\n\t\r\f";
Matcher m = Pattern.compile("\\\\(["+from+"])").matcher(input);
StringBuffer sb = new StringBuffer();
while (m.find())
m.appendReplacement(sb, "" + to.charAt(from.indexOf(m.group(1))));
m.appendTail(sb);
System.out.println(sb.toString());
:
import org.apache.commons.lang3.StringEscapeUtils;
...
System.out.println(StringEscapeUtils.unescapeJava(input));
あなたは[ApacheのCommonsのラング](HTTPを使用することができ
:// commons.apache.org/lang/)[StringEscapeUtils](http://commons.apache.org/lang/api-release/org/apache/commons/lang3/StringEscapeUtils.html)。 – McDowell
質問を完全に理解するのは難しいです。あなたはいくつかの入力と期待される出力を提供することはできますか? – anubhava
[JavaでJava文字列リテラルをエスケープする方法]の複製が可能です(http://stackoverflow.com/questions/3537706/howto-unescape-a-java-string-literal-in-java) –