Java 如何从字符串中获取特定字符串

Java 如何从字符串中获取特定字符串,java,Java,我需要上面字符串中的双倍值。 长度不是固定的Rs值1000 如何获得该值 您可以创建一个包含所有单词的数组,并且只使用以下数字: var text=Thanx,用于购买此产品,1000卢比。用于参观的Thanx; var数组=text.split; var newText=array[5].替换。,; console.lognewText 为此,您需要使用java正则表达式 下面是示例代码 正则表达式模式将根据您的要求进行更改简单正则表达式仅获取双值\\d+\.\\d+ 另外,您可以尝试下面的

我需要上面字符串中的双倍值。 长度不是固定的Rs值1000


如何获得该值

您可以创建一个包含所有单词的数组,并且只使用以下数字:

var text=Thanx,用于购买此产品,1000卢比。用于参观的Thanx; var数组=text.split; var newText=array[5].替换。,; console.lognewText 为此,您需要使用java正则表达式

下面是示例代码 正则表达式模式将根据您的要求进行更改简单正则表达式仅获取双值\\d+\.\\d+

另外,您可以尝试下面的代码

String line = "Thanx for purchasing this, Rs. 1000. Thanx for visiting";
        String regex = "[+-]?\d*\.?\d+([eE][+-]?\d+)?";

        String[] str = line.split(regex);

我想这会对你有帮助。

如果没有其他号码,那么在Rs之后。你可以使用

public String drawDigitsFromString(String strValue){
            String str = strValue.trim();
            String digits="";
            for (int i = 0; i < str.length(); i++) {
                char chrs = str.charAt(i);              
                if (Character.isDigit(chrs))
                    digits = digits+chrs;
            }
            return digits;
        }

如果还有其他数字,它将失败。

请看这里:您将需要一个不同的正则表达式,但这是我要使用的方法。请看这里文本可以是任意数字空间,因此我们可以使用空格进行拆分并获取数组[5]元素
public String drawDigitsFromString(String strValue){
            String str = strValue.trim();
            String digits="";
            for (int i = 0; i < str.length(); i++) {
                char chrs = str.charAt(i);              
                if (Character.isDigit(chrs))
                    digits = digits+chrs;
            }
            return digits;
        }
text.replaceAll("[^0-9]", "");