String.replaceAll在Eclipse之外不工作?

时间:2013-10-23 20:48:17

标签: java eclipse

我有以下代码行:

//line is of the format: "Garbage text (desired text)"
String target = line.replaceAll("Garbage text \\((.+)\\)", "$1");
return target; //separated for clarity

使用Eclipse Keplerjre1.6内输出,上面的内容会返回所需的文字。但是,当我将代码编译成可运行的jar时,上面会返回整个字符串,就好像replaceAll从未执行过一样。

当我尝试

line.replaceAll(".+\\((.+)\\)", "$1")

我得到了相同的结果。

我尝试更改构建路径以使用jre1.7,但无济于事。

我的环境:

Windows 7 x64 Professional
Java version "1.7.0_40"
Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
Java HotSpot(TM) 64-Bit Server VM (build 24.0-b56, mixed mode)

谁能告诉我发生了什么?

1 个答案:

答案 0 :(得分:0)

想出来。它与Eclipse或Java无关,而是与输入文件有关。 jar从另一个位置运行,文件名相同。这两个文件的格式略有不同,这就是让我失望的原因。

感谢所有的帮助,抱歉这是浪费时间。