String s = "E:\Confluence_Attachments\ver003\10\85\"
+ "1835010\124\165\4915874\19169322\1";
如何用“\”分割上面的字符串。我尝试了以下两种方法,均无效。
方法一:
String pattern = Pattern.quote(System.getProperty("file.separator"));
String[] splittedFileName = s.split(pattern);
System.out.println(" extractReqFields: ");
System.out.println(Arrays.toString(splittedFileName));
方法2:
//String pattern2 = "\\";
//String[] splittedFileName2 = s.split(pattern);
String[] splittedFileName2 = s.split("\\");
System.out.println(" extractReqFields2222: ");
System.out.println(Arrays.toString(splittedFileName2));
我从另一个方法获取以下字符串:
String s = "E:\Confluence_Attachments\ver003\10\85\"
+ "1835010\124\165\4915874\19169322\1";
所以我无法逃避反斜杠。现在我该如何用 '\' 来分割它?
我应该使用正则表达式以编程方式添加转义字符然后拆分吗?
您能告诉我如何以编程方式添加转义字符吗?
我明白这里有一个答案:
How to split a java string at backslash
但我的问题是如何以编程方式添加转义字符。我需要这方面的帮助。
最佳答案
只需使用“\\\\”
。 Java 将 "\\"
解释为一个 "\"
,因此 "\\\\"
= "\\"
String s = "E:\\Confluence_Attachments\\ver003\\10\\85\\"
+ "1835010\\124\\165\\4915874\\19169322\\1";
String[] splittedFileName2 = s.split("\\\\");
System.out.println(" extractReqFields2222: ");
System.out.println(Arrays.toString(splittedFileName2));
输出:
extractReqFields2222: [E:, Confluence_Attachments, ver003, 10, 85, 1835010, 124, 165, 4915874, 19169322, 1]
关于java - 如何用 "\\"分割字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51997760/