В чем мне нужна помощь?
Я хочу написать регулярное выражение 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"
}
Но в этом коде недостаточно проверки, чтобы соответствовать всем вышеупомянутым критериям.