Мне нужно получить строку в строке, которая начинается с «BE», а затем число и номер может быть любой цифрой.
Я попробовал следующий код, но он совпадает, только если есть 4-значный номер. Мне нужно сопоставить его для любой цифры.
$line = "ethernet card BE0987 strings allws";
preg_match('/BE([0-9]{4})/', $line, $match)
Какие-либо предложения ??
Это потому, что ([0-9] {4}) указывает регулярному выражению совпадать с 4 цифрами. вместо
Вы можете использовать это:
$line = "ethernet card BE0987 strings allws";
preg_match('/BE([0-9]*)/', $line, $match)
Ведьма будет совпадать с последующим нулем или более цифрами, или вы можете использовать:
$line = "ethernet card BE0987 strings allws";
preg_match('/BE([0-9]+)/', $line, $match)
ведьма будет соответствовать, после чего будет хотя бы одна цифра
Ты пробовал:
$line = "ethernet card BE0987 strings allws";
preg_match('/BE([0-9][0-9]{4})/', $line, $match);
Или вместо этого, почему бы не дать этот путь:
preg_match('/BE([0-9][0-9][0-9][0-9][0-9])/', $line, $match);
Вышеуказанное соответствует ровно 5 цифрам. Или вы можете сделать так, чтобы оно совпадало хотя бы с одной цифрой следующим образом:
preg_match('/BE([0-9]+)/', $line, $match);