例如,我有一个字符串。
"Quantity : 2.85 kg"
这里,我只需要提取具有正确配置2.85
的号码即可。
String.replaceAll("[^0-9]","");
仅将数字提取为285
,但我需要2.85。
请帮助。
答案 0 :(得分:1)
您一定是在开玩笑,数字的模式是
p = "/d*(./d+)?"
并提取为:
Matcher m = Pattern.compile(p)
while(m.find())
res = m.group(0)
答案 1 :(得分:1)
正则表达式是任何字符,然后是一个或多个带点的数字,后跟两位数字,即空格和kg。 捕获组用于捕获要提取的部分。
String test = "Quantity : 2.85 kg";
Pattern pattern = Pattern.compile(".*(\\d+\\.\\d\\d) kg");
Matcher matcher = pattern.matcher(test);
if(matcher.matches()){
System.out.println(matcher.group(1));
}else{
System.out.println("no match");
}