Регулярное выражение: заменить все, кроме соответствующего шаблона (java)JAVA

Программисты JAVA общаются здесь
Anonymous
Регулярное выражение: заменить все, кроме соответствующего шаблона (java)

Сообщение Anonymous »

У меня есть текстовая строка, соответствующая этому шаблону \d{2}\s?[a-zA-Z]\s?\d{2,5} от нуля до нескольких раз.Этот шаблон будет соответствовать последовательностям символов, которые можно описать следующим образом: две цифры, за которыми следует одна буква и от двух до пяти цифр. букву можно отделять ровно одним пробелом, но это необязательно.
Такая последовательность может встречаться в любом месте текста, как со словами и цифрами, так и отдельно.
Мне нужно удалить все, кроме соответствующей последовательности, используя чистую замену регулярных выражений (без использования циклов Java, потоков и т. д.)
Примеры:
"foo 12a123" --> ""
"12a123 бар" --> ""
"foo 12a123 bar 32A1234 baz" --> " 32A1234"
"12 a123 бар 32A 1234" --> " 32A 1234"
"foo bar" (нет совпадения) --> ""
Есть идеи?< /п>

Подробнее здесь: https://stackoverflow.com/questions/786 ... ttern-java

Вернуться в «JAVA»