Получить 10 из 1-10 из текста с помощью регулярного выражения - PullRequest
0 голосов
/ 28 декабря 2018

Допустим, у меня есть пример текста вроде этого "1-10, это текст 1000 записей."

как я могу получить из него число 10 с помощью регулярного выражения im с использованием PHP.

preg_match('/[^-0-9]/', '', $text)

хорошо?

1 Ответ

0 голосов
/ 28 декабря 2018

В отличие от preg_replace preg_match функция принимает первый аргумент в качестве регулярного выражения, которое необходимо сопоставить, второй аргумент в качестве строки, в которой применяется регулярное выражение для сопоставления, а третий аргумент - это переменная, в которой будут сохраняться совпадения.Для захвата 10 из 1-10 this is a text 1000 records. вы можете использовать вхождение - непосредственно перед цифрой, которую вы намереваетесь захватить, и можете написать такое регулярное выражение, как

-(\d+)

, которое в основном будет искатьдефис - и будет захватывать любое число, имеющее 1 или более цифр в группе 1.В php вы можете получить к нему доступ вот так:

$s = "1-10 this is a text 1000 records.";
preg_match('/-(\d+)/', $s, $m);
print($m[1]); // m[0] will contain full match and m[1] will contain text matched by group1

Какие распечатки,

10
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...