Java正则表达式替换基于操作系统的文件路径

时间:2012-10-23 21:33:47

标签: java regex replace platform

我不太确定是否有任何正则表达式可以取代这些东西:

这是从通过Linux机器保存的xml文件中读取的字符串值

<pcs:message schema="models/HL7_2.5.model"/>

这是Windows机器中保存的那个

<pcs:message schema="model\HL7_2.5.model"/>

这就是为什么文件在Linux中导出并在Windows中导入时会在eclipse中出错,反之亦然。

是否有任何正则表达式可以在String中查找并替换值(斜杠和反斜杠)? (不是XML解析)基于工作OS?

提前致谢

3 个答案:

答案 0 :(得分:4)

str = str.replaceAll("\\\\|/", "\\"+System.getProperty("file.separator"))

答案 1 :(得分:1)

答案 2 :(得分:1)

这应该注意修复斜杠:

String str = xml.replaceAll("\\\\|/", System.getProperty("file.separator"));