Регулярное выражение для получения значения String / StringBuffer в несколько строк - PullRequest
0 голосов
/ 21 декабря 2011

Предположим, у нас есть строка вроде:

String str = "Some value" +
             "value 2" + variable + "value 3";

я хочу многострочное регулярное выражение, которое может дать мне значение str.

Для String я использовал "(.+)\\s*[+=]\\s*(.+)(.*)[\\+]", но для многих возможных объявлений String это не удалось.

А также для StringBuffer вроде:

query.append("Some Value").append(" value 2")
     .append(variable).append(" value 3");

Для этого также многострочного регулярного выражения, которое может дать мне значение query

Для StringBuffer я использовал "[\\s]*([\\w]*)\\.append[\\s]*[(][\\s]*([\"][[^\"]|\"\"]*[\"])(.*)[)].*".

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

1 Ответ

0 голосов
/ 21 декабря 2011

Используйте Pattern и скомпилируйте свое регулярное выражение с Pattern.DOTALL.

И кстати, чтобы соответствовать пареню, вам просто нужно использовать \( (т. Е. "\\(" в кавычках), класс персонажа не нужен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...