Как выбрать текст мeжду определенными символами?

259
23 апреля 2017, 01:48

Вот такая строка

 worldTime(1492783520000,document.getElementById("worldTime"));

вот так пробую

preg_match_all('worldTime\((.+?)\,', $url, $arr);

но не работает. Мне нужно извлечь только время

Answer 1

Если нужно извлечь цифры после worldTime(, используйте

$res = "";
$s = ' worldTime(1492783520000,document.getElementById("worldTime"));';
if (preg_match('~worldTime\((\d+)~', $s, $m)) {
     $res = $m[1];
}
echo $res; 
// => 1492783520000

См. PHP-демо и демо регулярного выражения.

Регулярное выражение находит worldTime(, потом (с помощью (\d+)) захватывает в 1-ю подмаску 1 и более цифр.

Можно использовать версию без захватывающей подмаски, если использовать \K, обнуляющий текст текущего совпадения:

if (preg_match('~worldTime\(\K\d+~', $s, $m)) {
     $res = $m[0];
}

Демо второго регулярного выражения.

Answer 2

Вы не задали ограничители.

preg_match_all('@worldTime\((.+?)\,@', $url, $arr);
READ ALSO
Не срабатывает функция

Не срабатывает функция

Помогите решить проблему

287
Маленький код php

Маленький код php

Есть php код

221
Спарсить таблицу с phpQuery

Спарсить таблицу с phpQuery

На сайте есть таблицы (их кол-во может менятся),внутри таблиц есть thead ( в нем только один tr>th) и tbody (в нем может быть сколько угодно tr и в каждой...

519
Как сделать файловый менеджер Laravel?

Как сделать файловый менеджер Laravel?

Я хочу чтоб при нажатии кнопки для загрузки картинки или другого файла открывался файловый менеджер как допустим на WordPressКак это сделать?...

425