Аноны, я чет с регулряками затупил. В целях любопытства я заморочился парсингом POST запроса от формы.Таким вот уебищным образом:https://regex101.com/r/56d4nh/4/Два вопроса:1. Когда парсишь сегмент: Content-Disposition: form-data; name="file"; filename="test.jpg"Content-Type: image/jpegтут данные. hex картинки, или строка base64то в самом начеле есть символы\\r\\n - исмволы возврата каретки и переноса строкино в регулярке моей ищет успешно только когда установлен символ \\n -переноса строки. Если добавить возврат каретки - не ище.Там суть такая что заголовки отдельного блока в данных формы отделены от собственно данных такой последовательностью - "\r\n\r\n"А перед заголовками только "\r\n". Соответственно я хочу получить заголовки и разобрать их уже по значениям.2. Почему у меня в квадратных скобках символ точки "." ничего не ищет?
>>1797982По поводу \r\n vs \n - это может быть особенность regex101, что там перенос строки кодируется как \n и \r там нету. А вот в реальном запросе от браузера присутствует \r\n.Ты можешь писать \r?\n, который должен работать и там и там.> Почему у меня в квадратных скобках символ точки "." ничего не ищет?Внутри квадратных скобок символ точки ищет знак точки, а не "любой символ".Твоя регулярка не очень удачная, так как внутри заголовка могут быть различные символы, не только те, что указаны у тебя. Я бы советовал искать так: - отрезаем от запроса первый набор заголовков (заканчивается \r\n\r\n)- разбираем их на строки- выделяем там значение boundary в заголовке Content-Type- разбиваем остаток запроса на части по строке boundary - каждую часть разбиваем на заголовки и тело по \r\n\r\n- заголовки разбираем на строкиВид POST-запроса с boundary можно посмотреть к примеру тут: https://habr.com/ru/post/511114/