у меня есть это
87||2|#88||4|#89|
или же
87||1|#88||3|#89|
или же
95||1|#88||1|#89|
или другие переменные данные. Каждый раз, когда есть ...|#88||number|...)
Мне нужно захватить «число» и «напечатать» его.
Через некоторые из полученных предложений я написал это, но результат все еще не верен.
function caratteristiche1($property_bedrooms) {
$new = preg_match("/\|88\|\|(\d+?)\b/", $property_bedrooms);
print_r($new);
}
Что я могу сделать?
Вам нужно вызвать перегруженную версию preg_match()
который принимает массив, содержащий совпадения, в качестве третьего параметра. Соответствующий номер (в скобках) будет доступен в второй положение $results
массив. Просто получите доступ к этому значению, и у вас все получится:
function caratteristiche1($property_bedrooms) {
$new = preg_match("/\|#88\|\|(\d+)/", $property_bedrooms, $results);
print_r($results[1]);
}
Кстати, $results[0]
содержит полную строку ввода.
Нажмите на ссылку ниже, если вы хотите проверить работающее регулярное выражение.
Хорошо, спасибо, Тим!
Ваш Regex хорош. Правильная функция:
function caratteristiche1($property_bedrooms) {
$new = preg_match('/\\|#88\\|\\|(\\d+)/', $property_bedrooms, $results);
print_r($results[1]);
}
Спасибо за ваше время!