【问题标题】:How to Convert Special Characters in Java [duplicate]如何在 Java 中转换特殊字符 [重复]
【发布时间】:2017-11-25 14:50:44
【问题描述】:

我有这些从PostgreSQL DB 获得的字符串集:

"WITH DELIMITER E'\037'"
"WITH DELIMIER E'\01f'"
"WITH DELIMITER '|'"

我需要提取单引号之间的任何内容并使用它来拆分和连接字符串。类似的东西:

String delimiter = delimiter.substring(delimiter.indexOf("'")+1, delimiter.indexOf("'",delimiter.indexOf("'")+1));
String[] splitString = originalString.split(delimiter);
//Do something with it...
String joinedString = StringUtils.join(splitString, delimiter);

问题是 Java 需要 \037(从 DB 读取到字符串)并将其读取为 \\037(将打印为“\037”),我需要 \037(特殊字符)进行拆分和连接功能。

我需要一种方法来获取单引号(\037、\01f、| 等)之间的值并将它们转换为特殊字符。

那就是:

String originalString = "\\037"
String convertedString = "\037"

另外,管道 (|) 是 Java 中的元字符,为了让我拆分它,我必须执行以下操作:

String[] splitString = originalString.split(Pattern.quote("|"));

我不想做 if 条件,我想要更好的东西。 提前感谢您的帮助

【问题讨论】:

  • 哇,你是对的!我使用了第二种解决方案,因为它更容易理解。感谢您的帮助!

标签: java string split special-characters


【解决方案1】:

我认为你应该使用this。它更容易,你不关心特殊字符。

【讨论】:

  • 谢谢你的回答我不会有同样的问题吗?如果我用函数 withDelimiter(char delimiter) 调用它,我仍然需要发送特殊字符,对吧?
  • 嗨罗!您的答案看起来很有用,但如果您在其中提供摘要文本会更好,而不仅仅是链接。这使读者可以更快地进行评估,并且如果链接的一侧消失或移动,它仍然很有用。请参阅How do I write a good answer? 帮助页面中的为链接提供上下文
猜你喜欢
  • 2017-05-30
  • 1970-01-01
  • 2012-11-21
  • 2019-09-11
  • 2012-06-15
  • 1970-01-01
  • 1970-01-01
  • 2020-05-06
  • 2010-11-16
相关资源
最近更新 更多