Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 按数字分割字符串_Java_String - Fatal编程技术网

Java 按数字分割字符串

Java 按数字分割字符串,java,string,Java,String,谁能帮我把这根绳子按数字分开吗 例如:“我需要5000分”是我想要的字符串“5000” 我尝试了很多方法,比如: //split the string by RegExp: String array = string.split(".*\\d.") 我得到了输出,但不是我所期望的 输出: array[0] = "" array[1] ="points 有人能帮我找到合适的解决方案吗?你想对不是数字的所有内容进行拆分: String array[] = string.split("\\D

谁能帮我把这根绳子按数字分开吗 例如:“我需要5000分”是我想要的字符串“5000”

我尝试了很多方法,比如:

//split the string by RegExp:
String array = string.split(".*\\d.")
我得到了输出,但不是我所期望的

输出:

 array[0] = ""
 array[1]  ="points

有人能帮我找到合适的解决方案吗?

你想对不是数字的所有内容进行拆分:

String array[] = string.split("\\D+");
试试这个

Pattern p=Pattern.compile("\\d+");
    Matcher m=p.matcher(yourString);
    while(m.find()){
    System.out.println(m.group());
}
你能试试这个吗(也可以用数字):


通常,您可以尝试按
进行拆分
str.matches(“-?\\d+(\\.\\d+)”)//将数字与可选的“-”和小数点匹配。

虽然这不是你尝试过的方式。通过
myString.split(\\s+”)获取字符串[]
然后检查拆分的字符串是否包含任何数字

不过,请注意上面的正则表达式机制,因为如果您使用非拉丁(即0到9)数字,它将失败。例如,阿拉伯数字


您可以在此处查看-

不拆分字符串,而是执行RegExpsearch@rebeliagamer. 这是一个C#问题。OP对正则表达式本身没有问题,但是如何使用它。它应该是一个
字符串[]
感谢您的响应。它应该是一个数组
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher("I Need 5000 points");
while (matcher.find()) {            
    System.out.println(matcher.group());
}
Pattern p=Pattern.compile("\\d+");
    Matcher m=p.matcher(yourString);
    while(m.find()){
    System.out.println(m.group());
}
echo preg_replace("/[^0-9,.]/", "", "I Need 5000 points");
import java.util.regex.*;

String myString = "I Need 5000 points";
Pattern pattern = Pattern.compile("\\d+");
Matcher matcher = pattern.matcher(myString);
if(matcher.find())            
    System.out.println(matcher.group(0));