我正在尝试从一行文本中解析双打。我发现了几行我认为正在做我想做的事情的代码。但是,我发现它不会解析负双打(只会将它们解析为正)。我对正则表达式完全陌生,它有点压倒性。我想知道是否有人可以解释下面的代码并告诉我每个部分的含义,以及我将如何修改它以便解析正负双打?提前致谢!
double nextDouble;
Matcher matcher = Pattern.compile("(?!=\\d\\.\\d\\.)([\\d.]+)").matcher(line);
if (matcher.find()) nextDouble = Double.parseDouble(matcher.group(1)));
编辑:这是一条线的示例。“104.44518717、34.09785265、103.39288764、0.09813121、0.00000000、-0.46612322、4.68576504”
它将 -0.46612322 解析为 0.46612322。