Hayır, bir kez derlendiğinde, "\\n"
'un "\n"
afaik ile ilgisi yoktur. aşağıdaki gibi yaptığım bir şey öneririm:
Saf Java: Apache Commons StringEscapeUtils kullanma
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));
Bunu [Apache Commons Lang] (http kullanabilirsiniz
: // commons.apache.org/lang/)'in [StringEscapeUtils] (http://commons.apache.org/lang/api-release/org/apache/commons/lang3/StringEscapeUtils.html). – McDowell
Soruyu tam olarak anlamak zor. Biraz girdi ve beklenen çıktı sağlayabilir misiniz lütfen? – anubhava
[Java'da bir Java dizesi değişmezini nasıl unescape] 'ın olası kopyası (http://stackoverflow.com/questions/3537706/howto-unescape-a-java-string-literal-in-java) –