Поскольку я не люблю использовать регулярные выражения, я хотел бы спросить, есть ли другой простой способ извлечь значения из строки.
Пример строки:
отправить 0,2 XYZ ABC DEF
В приведенном выше примере мне нужно извлечь все значения, что означает, что мне нужно:
$string_1 = "send";
$string_2 = "0.2";
$string_3 = "XYZ";
$string_4 = "ABC";
$string_5 = "DEF";
Есть ли простой способ отфильтровать приведенный выше пример? «Разделительный символ» всегда будет «» (пробел).
Вы можете сделать это без каких-либо регулярных выражений, но с помощью простой функции PHP, как список() а также взорваться (). Попробуй вот так.
<?php
$string = 'send 0.2 XYZ ABC DEF';
list($string_1, $string_2, $string_3, $string_4, $string_5) = explode(' ', $string);
echo $string_1. PHP_EOL;
echo $string_2. PHP_EOL;
echo $string_3. PHP_EOL;
echo $string_4. PHP_EOL;
echo $string_5. PHP_EOL;
?>
Выход программы:
send
0.2
XYZ
ABC
DEF
СМОТРИ ДЕМО: https://eval.in/1022829
Редактировать: С for()
петли,
$length = count($array);
for ($i = 0; $i < $length; $i++) {
$name = "string_".($i+1);
$$name = $array[$i];
}
Других решений пока нет …