3

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

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

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

这是保存在 Windows 机器中的那个

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

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

是否有任何正则表达式来查找和替换字符串中的值(斜杠和反斜杠)?(不是 XML 解析)基于工作操作系统?

提前致谢

4

3 回答 3

4

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

于 2012-12-07T00:42:46.367 回答
2

使用“file.separator”系统属性并以此为基础您的正则表达式。

http://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html

另请参阅:File.separator vs FileSystem.getSeparator() vs System.getProperty("file.separator")?

于 2012-10-23T21:36:51.690 回答
1

这应该注意修复斜线:

String str = xml.replaceAll("\\\\|/", System.getProperty("file.separator"));
于 2012-10-23T21:45:52.130 回答