2017-06-15 108 views
-4

我有以下字符串:如何提取從字符串值使用正則表達式

XYZ,132917057937901,150617,051244,+12.345555,+73.179481,0,153,45,11,1,3,000,00,0.0,9.23,7.40,24.74,0.0,0,0.90,0,0,345,1374,108 

現在我想在第16位9.23和第17位7.40提取價值。

這個字符串與他們的位置是固定的。

我如何在第16和17位獲得價值?

回答

4

使用String.split代替正則表達式:

String[] split = input.split(','); 
String pos16 = split[15]; 

如果你想使用這種使用正則表達式,比賽並獲得組1和2:

Matcher m = Pattern.compile("(?:[^,]*,){15}([^,]*),([^,]*)").matcher(input); 
m.find(); 
String pos16 = m.group(1); 
+0

由於它的工作! – deepak

+1

正則表達式不匹配。在{15}之後移除',''。 – saka1029

相關問題