0

我有一个问题 - 是否有可能在文本中识别出右侧有减号的负数?例如,我正在考虑这样的数字:1500.0-(而不是-1500.0)。预先感谢您的任何帮助。

4

3 回答 3

1

不仅有可能,而且处理尾随符号实际上更容易。您只需像往常一样转换数字,继续获取数字,然后如果它以减号结尾,则将其取反。比必须记住一个主要标志更容易。

尽管 JDK 中提供了方法的名称,但这不是“解析”,而是基数转换。

于 2013-10-21T23:45:01.580 回答
0

首先将减号(如果有)从末尾移到开头:

num = num.replaceAll("(.*)(-)?$", "$2$1");

这里的好处是,如果最后没有减号,或者 yjr 在开始时已经减去我们,那么它没有任何改变。

然后正常解析它,例如:

double d = Double.parseDouble(num);
于 2013-10-21T23:45:15.310 回答
0

你可以使用charAtor a regular Expression,还有更多......

String s = "1500.00-";
if (s.charAt(s.length()-2) == '-'){
  //minus on the right.
}
于 2013-10-21T23:28:32.587 回答