当前位置: 首页 > 知识库问答 >
问题:

如何解析字符串以从中获得双倍值

苏边浩
2023-03-14

请帮我解决下一个问题:

有一个字符串模式,假设它是公共的final static变量。我们搜索的地方有一个字符串。有一个类,简单的包装器

public class Wrapper {

    private double value;

    public double getValue() {
        return value;
    }

    public Wrapper(double value) {
        this.value = value;
    }
}

我需要方法

public Wrapper parse(String s, int index)

如果索引处的字符串是双精度数字,小数点后最多有两位数字(如果有小数点),并且数字结束后有字符串模式,则返回包装器的对象,例如字符串

String pattern = "money";
String search = "Giveme10.25moneyplease";

parse(search,6)返回新的包装器(10.25)

在其他情况下(索引小于零,大于字符串长度,从索引开始的子字符串根本不是数字,或者是双数,但小数点后包含超过2位数字,或者数字后没有字符串模式),方法必须返回null

另一种只与字符串模式不同的方法必须是第一个数字,然后是两个数字,小数点后最多两位数,其他所有数字都相同

String pattern = "money"
String s = "Ihavemoney10.50"

parse1(s,5)返回新的包装器(10.50)

共有1个答案

池照
2023-03-14

您可以像这样使用DecimalFormatParsePosition

import java.text.DecimalFormat;
import java.text.ParsePosition;

public class TestP {

    public static void main(String[] args) {


        DecimalFormat decimalFormat = new DecimalFormat("00.##'money'");

        String search = "Giveme10.25moneyplease";

        int index = 6;
        //output 10.25
       Number number = decimalFormat.parse(search, new ParsePosition(index));

    if (number != null) {
        String s = number.toString();           
        if (s.contains(".") && s.length() > 5) {
            number = null;
        }
    }
    System.out.println(number);

    }

}
 类似资料:
  • 问题内容: 我想知道如何从字符串中解析几个双精度数字,但是字符串可以混合使用,例如:。 标准方法()不适合。我尝试使用方法解析它,但是如何解析其他字符和? 谢谢。 问题答案: 使用合适的正则表达式(如此代码或其他文章)分析双打后,重复将匹配的双打添加到列表中。在这里,您已经准备好在代码中的其他任何地方使用。

  • 如果我尝试实现一个自定义转换器(我在网上找到了一些例子),它会抱怨我没有实现抽象方法convert(F),而这些例子都没有实现。 谢了。

  • 问题内容: 我试图从json字符串解析json数组,但它总是抛出异常。 如果我有任何错误,请告诉我。 谢谢。 这是我从服务器获取Json的代码: 这是解析JsonArray的代码: 这是我的json字符串: 问题答案: 嗨,@ Caerulius,Harish,ρяσsρєяK,Hot Licks等等。 最终,经过2天的头痛和2个不眠之夜,我解决了这个问题。而且由于您花了宝贵的时间与我讨论,因此我

  • 问题内容: 我想从android中的字符串解析网址。示例字符串为 我想在不使用subString方法的情况下从String 解析URL 。 问题答案: 更新: 您可以使用正则表达式和正则表达式来查找文本中的所有url。 原版的: 您可以使用功能。

  • 显然,有些事情发生了变化,因此我无法从字符串解析i64: 错误:

  • 我在用Lucene。Net版本3.0。3. 下面是Lucene查询转换为字符串,带有字段键、值和容差。 我想把字符串值传递给Api,在那里我需要转换回Lucene查询。 我使用字段FirstName和LastName尝试了QueryParser和MultifieldQueryparser,但在传递时没有返回确切的查询。