Застрял в регулярном выражении

У меня есть 3 строки, которые содержат 2 поля и 2 значения в строке. Мне нужно регулярное выражение для строк, чтобы я мог получить данные. Вот 3 строки:

TTextRecordByLanguage{Text=Enter here the amount to transfer from your compulsory book saving account to your compulsory checking account; Id=55; }

TTextRecordByLanguage{Text=Hello World, CaribPayActivity!; Id=2; }

TTextRecordByLanguage{Text=(iphone); Id=4; }

2 поля Text а также Id, поэтому мне нужно выражение, которое получает данные между Text поле и точка с запятой (;). Убедитесь, что специальные символы и любые данные включены.

Обновить::

Что я пробовал.....

Pattern pinPattern = Pattern.compile("Text=([a-zA-Z0-9 \\E]*);");
                        ArrayList<String> pins = new ArrayList<String>();
                        Matcher m = pinPattern.matcher(soapObject.toString());
                        while (m.find()) {
                            pins.add(m.group(1));
                            s[i] = m.group(1);

                        }
                        Log.i("TAG", "ARRAY=>"+ s[i]);

1 ответ

Решение

Я предлагаю RE, как это:

Text=.*?;

Например: возвращение последней строки должно быть

Текст =(iphone);

тогда вы можете удалить текст = и ; вне строки, так как вы хотите только содержимое.

Другие вопросы по тегам