如何用双引号拆分字符串"作为分隔符?

时间:2015-05-01 11:53:25

标签: java scala

我尝试像这样分裂 -

tableData.split("\\"")

但它不起作用。

6 个答案:

答案 0 :(得分:4)

您已通过\两次转发\,尝试

tableData.split("\"")

为什么会这样?
反斜杠会转义以下字符。由于下一个字符是另一个反斜杠,第二个反斜杠将被转义,因此双引号不会 您生成的转义字符串为\",它应该只是"

编辑:
还要记住,String.split()将其模式参数解释为正则表达式,该表达式具有多个特殊字符,必须在结果字符串中进行转义。
因此,如果要按.(这是一个特殊的正则表达式字符)进行拆分,则需要将其指定为String.split("\\.")。第一个反斜杠会逃避第二个反冲的逃逸函数,并导致"\."

如果是正则表达式字符,你也可以使用Pattern.quote();来逃避你想要的分隔符,但这远远超出了有问题的范围。

答案 1 :(得分:2)

尝试使用单反斜杠\

  tableData.split("\"")

答案 2 :(得分:1)

通过使用单个反斜杠"转义\来尝试这样做:

tableData.split("\"")

答案 3 :(得分:0)

你没有正确逃脱。片段代码甚至不会因为它而编译。正确的方法是

tableData.split("\"");

答案 4 :(得分:0)

单个反斜杠可以解决问题。
像这样:

tableData.split("\"");

答案 5 :(得分:0)

实际上,您可以拆分而无需反斜杠。您只需要使用单引号

tableData.split('"');