| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > pcrecpp |
| Автор: box 8.4.2015, 00:06 | ||
| всем привет! помогите разобрать строку на подстроки строка: 03/21/2015-16:02:33.468684 [Drop] [**] [1:2013057:3] ET WEB_SERVER Inbound PHP User-Agent [**] [Classification: Attempted Information Leak] [Priority: 2] {TCP} 67.22.140.100:40717 -> 10.10.50.100:80 надо взять все что между [**]...........[**] и так же вырезать 67.22.140.100:40717 -> 10.10.50.100:80 подскажите регулярку что бы ее можно было применить так:
|
| Автор: rudolfninja 8.4.2015, 11:12 | ||
Я не уверен, но регулярка должна быть такой:
По крайней мере, https://regex101.com/#javascript выдает правильные результаты по такой регулярке и заданной строке. |
| Автор: xvr 8.4.2015, 12:39 |
| 2 ТС: Не забудьте удвоить все '\' в исходной С++ строке. Обратный слэш имеет для самого С++ компилятора вполне особое значение, и в своем чистом виде в конечное содержимое строки не попадает |
| Автор: kemiisto 8.4.2015, 13:52 |
Или https://solarianprogrammer.com/2011/10/16/cpp-11-raw-strings-literals-tutorial/. |
| Автор: box 8.4.2015, 14:31 | ||||
не работает
и так тоже
не работает ни одна перл совместимая регулярка! что же оно хочет? |
| Автор: rudolfninja 8.4.2015, 17:04 | ||
| Попробуйте как посоветовал kemiisto. То есть так:
|
| Автор: box 8.4.2015, 18:27 |
| suric.cpp:333:18: error: invalid character '\' in raw string delimiter suric.cpp:333:1: error: stray ‘R’ in program |
| Автор: box 8.4.2015, 18:49 | ||
вопрос решен:
всем спасибо) |