#php
#php
Вопрос:
У меня есть текст, подобный
Hello {{name}}, I am {{virtual_assistant_name}}, virtual assistant of {{company_name}}.
Как я могу извлечь эти строки внутри {{}} и поместить int в массив?
Комментарии:
1. Вы используете фреймворк?
2. Вы пробовали что-нибудь для достижения этого
3. Это текст для отправки сообщений в службу api WhatsApp
4. не используя какой-либо фреймворк. Я пытался найти решение, но ничего не нашел
5. @berend как работает этот инструмент?
Ответ №1:
Это создает требуемый результат, используя устройство разделения, которое я разработал при написании синтаксического анализатора JSON.
$s='Hello {{name}}, I am {{virtual_assistant_name}}, virtual assistant of {{company_name}}.';
$a=[];
foreach(explode('}}',$s) as $v) {
$t=explode('{{',$v);
if (isset($t[1])) $a[]=$t[1];
}
print_r($a);
Вывод:
Массив ( [0] => имя [1] => virtual_assistant_name [2] => имя_компании )
Предполагается, что строка правильно сформирована (т. Е. Равное количество {{
to }}
, и никогда больше последнего) и не имеет вложенности.
Затем explode
by }}
, а затем explode
каждая часть by {{
. Если есть 2 части, то значение существует, и поэтому добавьте его в массив.