2016-05-06 6 views

ответ

1

Вы можете использовать регулярное выражение с этим рисунком [0-9] +

Пример:

String toIndex = "A=1,B=2,C=3,D=4,E=5"; 
    Pattern p = Pattern.compile("[0-9]+"); 
    Matcher m = p.matcher(toIndex); 
    while (m.find()) { 
     System.out.println(m.group()); 
    } 

и в то время как вместо печати группы добавляют затем к списку или аналогичный для последнего манипуляция

+1

Благодаря @Xoce, Вместо целых может быть строка. Так что regex я должен использовать. 'A = AA, B = BB, C = CC, D = DD, E = EE' –

1

использование этого:

String s = "A=1,B=2,C=3,D=4,E=5"; 
    Pattern p = Pattern.compile("=(\\d+)"); 

    Matcher m = p.matcher(s); 
    while (m.find()) { 
     System.out.println(m.group(1)); 
    } 

\ d + для одного до n цифр

+0

Благодаря @Jens, вместо целых может быть строка. Так что regex я должен использовать. Fg: 'A = AA, B = BB, C = CC, D = DD, E = EE' –

+0

@VarunArya use \\ w + вместо \\ d + – Jens

+0

** Спасибо ** :) –

0

Поскольку вы попросили использовать split, это также сработает.

String str2 = "A=1,B=2,C=3,D=4,E=5"; 
    String [] between = str2.split("=+|,"); 
    for(int i=1; i<between.length; i+=2){ 
     System.out.println(between[i]); 
    } 

работает как для строк и чисел между = и,

(А = АА, В = ВВ, СС С = D = ДД, Е = ЕЕ)

+0

Это тот. Я хочу .. Большое спасибо @jsurf :) –

+0

Anytime @VarunArya – jsurf

+0

@VarunArya принять ответ? – jsurf

 Смежные вопросы

  • Нет связанных вопросов^_^