Каким будет регулярное выражение Java для проверки последующего шаблона и получения чего-либо внутри фигурных скобок в виде строки?abc12 = {р, д} - PullRequest
0 голосов
/ 16 сентября 2018

В чем мне нужна помощь?

Я хочу написать регулярное выражение Java для проверки следующих выражений:

    fruits={apple,banana1,mango}

    fruits2={pear}

    x={}

Все вышеприведенные выражения следует считать действительными. Общий шаблон следующий (но я не могу написать регулярное выражение, поскольку я новичок в нем):

someAlphaNumericString={empty,OneOrMoreCommaSeparated,Alpha123NumericStrings}

Вот некоторые примеры, которые не следует считать действительными:

        = {a,b}     // Missing string before =
    abc =           // Missing {} after =
    123 {1,3}       // Missing =   

 **Conclusion**: There should be an alphanumeric string before =
                 There should be a =
                 There should be at least {} after =

Как только выражение станет действительным , я хочу получить что-нибудь между фигурными скобками {} в строку .

Что я уже сделал?

Пока у меня есть следующий код:

 String tempStr = "a={b,c}";
 Pattern entry = Pattern.compile("\\{(.*?)\\}");  // This will match anything between {}
 Matcher matchPattern = entry.matcher(tempStr);

 String result;
 while(matchPattern.find()) {
    result = matchPattern.group(1);   // The result variable has "b,c"
 }

Но в этом коде недостаточно проверки, чтобы соответствовать всем вышеупомянутым критериям.

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