Я следующий текст в виде строки с именем $ тест:регулярное выражение не суметь без ошибок
Content-Type: text/plain
Server: testapp (4.2.1 (x86_64/linux))
Content-Length: 125
{"password":"123","email_address":"","name":"j.doe","username":"jd123"}
Я пытаюсь написать регулярное выражение в PHP, который будет возвращать все после того, как Content-Length: 125. Вот что я до сих пор:
if (preg_match('/^Content\-Length\:[0-9\\n]+([a-zA-Z0-9\{\}\"\:])*/',$test,$result))
{
var_dump($result[1]);
}
Я не получаю никаких сообщений об ошибках, но не находит шаблон я определил в моей строке. Я также попробовал этот шаблон:
'/^Content\-Length\:[0-9\\n]+([a-zA-Z0-9{}\"\:])*/'
, где я попытался удалить побег символ Infront из фигурных скобок. Но это все равно.
Можете ли вы сказать мне, что мне не хватает? Спасибо.
EDIT 1
мой код теперь выглядит следующим образом:
<?php
$test = "Content-Type: text/plain
Server: kamailio (4.2.1 (x86_64/linux))
Content-Length: 125
{"password":"test123","email_address":"","name":"j.doe","username":"jd123"}";
//if (preg_match('/Content-Length\:[0-9\\n]*([a-zA-Z0-9{}\"\:])*/',$test,$result))
//{
// var_dump($result);
//}
preg_match('/({.*})/', $str, $matches);
echo $matches[0];
?>
Это дает мне следующее сообщение об ошибке:
Undefined offset: 0 in /var/www/html/test/test.php on line 31
Line 31, где я пытаюсь повторить матчей.
в вашем редактирования вы проверяете для '$ str' вместо' $ test' который не соответствует ни одному – Cfreak
И вы должны видеть другие ошибки, потому что вы выходите из строки. Повторите мой ответ еще раз ... –
у вас есть непревзойденные пробелы после буквального. Добавить место после первого: в вашем регулярном выражении. –