Другие языки программирования и технологии

Регулярные выражения

Артур Т
Артур Т
2 591
~boundary=([^;]+)~
~=([^;]+)~
для .NET без значков ~
Что сложного-то?
Акжан Сакен
Акжан Сакен
4 226
Лучший ответ
Артур Т Спасибо за ответ, я пробовал boundary=([^;]*), но и мои и твои вариант не работают в java. Хотя может проблема в коде:

Matcher boundaryMatcher = Pattern.compile("boundary=([^;]+)").matcher(bufStr);
if (boundaryMatcher.groupCount() > 0) {
bufStr = boundaryMatcher.group(1);
frameBoundary = "--" + bufStr;
}

выдает ошибку: No successful match so far
Артур Т Все разобрался, ошибка и правде в коде:
Matcher boundaryMatcher = Pattern.compile("boundary=([^;]+)").matcher(bufStr);
if (boundaryMatcher.find()) {
frameBoundary = "--" + boundaryMatcher.group(1);
}
Регуля́рные выраже́ния (англ. regular expressions) — формальный язык поиска и осуществления манипуляций с подстроками в тексте, основанный на использовании метасимволов (символов-джокеров, англ. wildcard characters). По сути это строка-образец (англ. pattern, по-русски её часто называют «шаблоном» , «маской») , состоящая из символов и метасимволов и задающая правило поиска.
Регулярные выражения произвели прорыв в электронной обработке текстов в конце XX века. Набор утилит (включая редактор sed и фильтр grep), поставляемых в дистрибутивах UNIX, одним из первых способствовал популяризации регулярных выражений для обработки текстов. Многие современные языки программирования имеют встроенную поддержку регулярных выражений. Среди них ActionScript, Perl, Java[1], HTML5, PHP, JavaScript, языки платформы .NET Framework[2], Python, Tcl, Ruby, Lua, Gambas, C++ (стандарт 2011 года) , Delphi и др.
Регулярные выражения используются некоторыми текстовыми редакторами и утилитами для поиска и подстановки текста. Например, при помощи регулярных выражений можно задать шаблоны, позволяющие:
найти все последовательности символов «кот» в любом контексте, как то: «кот» , «котлета» , «терракотовый» ;
найти отдельно стоящее слово «кот» и заменить его на «кошка» ;
найти слово «кот» , которому предшествует слово «персидский» или «чеширский» ;
убрать из текста все предложения, в которых упоминается слово кот или кошка.
Регулярные выражения позволяют задавать и гораздо более сложные шаблоны поиска или замены.
Содержание
1 История
2 В теории формальных языков
3 Синтаксис
3.1 Представление символов
3.1.1 Обычные символы (литералы) и специальные символы (метасимволы)
3.1.2 Любой символ
3.1.3 Символьные классы (наборы символов)
3.2 Позиция внутри строки
3.3 Квантификация (поиск последовательностей)
3.3.1 Жадная и ленивая квантификация
3.3.2 Ревнивая квантификация (Сверхжадная)
3.4 Группировка
3.4.1 Обозначение группы
3.4.2 Обратная связь
3.4.3 Группировка без обратной связи
3.4.4 Атомарная группировка
3.4.5 Модификаторы
3.4.6 Комментарии
3.5 Перечисление
3.6 Просмотр вперёд и назад
3.7 Поиск по условию
3.8 Флаги
4 Разновидности регулярных выражений
4.1 Базовые регулярные выражения POSIX
4.2 Расширенные регулярные выражения POSIX
4.3 Регулярные выражения, совместимые с Perl
5 Нечёткие регулярные выражения
6 Реализации
7 Примечания
8 Литература
9 См. также
10 Ссылки
Акжан Сакен ох...ительно!!! Вместо многоточия поставьте букву у, чтобы получилось "охуительно"
На степике вбей курс "Регулярные выражения в Python"
Roman Kuprun
Roman Kuprun
102