所以我试图拆分一个简单的数学方程,其中包含两个以科学计数法表示的双精度数,例如“54E-1-57E-1”。我正在尝试找到正则表达式模式来为我做这件事,但我遇到了两个问题。首先是,以下代码成功拆分了我的字符串,但由于某种原因 negTest 打印出错误,我不知道为什么。
public static void main(String[] args) {
String testString = "54E-1-57E-1";
boolean negTest = string.contains("(?<=\\d)-(?=\\d)");
System.out.println(negTest);
String[] output = testString.split("(?<=\\d)-(?=\\d)");
System.out.println(Arrays.toString(output));
}
//Output:
//false
//[54E-1, 57E-1]
我认为这是我的正则表达式的问题,但是字符串在减号周围成功拆分,这让我感到困惑。第二个问题是我将如何拆分它以便将减号包含在第二个术语中,例如
[54E-1, -57E-1]
非常感谢任何帮助/解释!