Переместите все это в kernel.php, если только вышеприведенный метод не сработал для вас, помните, что вы должны переместить все эти строки в kernel.php в дополнение к вышеупомянутому решению
позвольте мне сначала отобразить так оно и есть в файле уже ..
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
];
/**
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
],
'api' => [
'throttle:60,1',
],
];
Теперь то, что вам нужно сделать, это
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
];
/**
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
],
'api' => [
'throttle:60,1',
],
];
, т. Е.
Библиотеки повышения обычно являются хорошим выбором, в данном случае Boost.Regex . Есть даже пример разделения строки на токены, которые уже делают то, что вы хотите. В основном это сводится к следующему:
boost::regex re("[\\sXY]+");
std::string s;
while (std::getline(std::cin, s)) {
boost::sregex_token_iterator i(s.begin(), s.end(), re, -1);
boost::sregex_token_iterator j;
while (i != j) {
std::cout << *i++ << " ";
}
std::cout << std::endl;
}
Если вы хотите свести к минимуму использование итераторов и уточнить свой код, должно работать следующее:
#include <string>
#include <iostream>
#include <boost/regex.hpp>
int main()
{
const boost::regex re("[\\sXY,]+");
for (std::string s; std::getline(std::cin, s); )
{
std::cout << regex_replace(s, re, " ") << std::endl;
}
}
В отличие от Perl, регулярные выражения не «встроены» в C ++.
Вам необходимо использовать внешнюю библиотеку, такую как PCRE .
Регулярные выражения являются частью TR1, включенного в Visual C ++ 2008 SP1 (включая экспресс-выпуск) и G ++ 4.3.
Заголовок -
, а пространство имен std :: tr1 . Отлично работает с STL.
Начало работы с регулярными выражениями C ++ TR1
Стандартная библиотека Visual C ++: Регулярные выражения TR1