2011-12-16 2 views
1

Существует String, который задает пользователь, который находится в формате "{{row1,col1},{row2,col2},{row3,col3}}". Эти координаты являются определенными местоположениями, которые должны заполняться матрицей, то есть изменять значения матрицы при обнаружении одной и той же координаты.Преобразование строки в положение матрицы

String может быть любой длины, но мы будем знать, сколько у него будет координат.

Проблема заключается в том, что я не могу найти быстрое решение для преобразования этой строки в местоположения. Я пытаюсь использовать класс StringTokenizer, но слишком много разделителей.

Можете ли вы помочь мне найти лучшее решение этой проблемы.

Заранее спасибо.

+0

Рассмотрите возможность использования раскола и разделения на ' "}, {"', чтобы начать с. –

ответ

2

Попробуйте это,

String str="{{row1,col1},{row2,col2},{row3,col3}}"; 

    Pattern pattern = Pattern.compile("(\\w+,\\w+)+"); 
    Matcher matcher = pattern.matcher(str); 

    while (matcher.find()) 
    { 
     String search=matcher.group(); 
     String []ar=search.split(","); 
     System.out.println(ar[0] + " " + ar[1]); 
    } 
Смежные вопросы