2016-06-05 3 views
1

Так скажите, что у меня есть строка, например 2x + 2y, и я хочу разбить эти строки.Разделите строку и добавьте ее на нее

Я хочу, чтобы раскол был выполнен, и он будет выглядеть как 2 * x + 2 * y после его обработки или внесения изменений.

Я посмотрел на Руководство по PHP для preg_replace, но я никак не мог найти нужную вещь для меня, я думал, что это может выглядеть на number + letter затем заменить его с помощью * в середине, но я не Не знаю, как добиться этого.

+0

Использование http://www.phpliveregex.com для регулярных выражений тестирования – Matt

+0

Просто, чтобы вы начали: 'preg_replace ("/([0-9] +) ([A- Za-z])/"," $ 1 * $ 2 ", $ str);' – ccKep

+0

с использованием regexp может быть решением, но в мнении довольно сложно использовать его в этом контексте, читайте о входном токенинге - вам просто нужно разобрать текст разделил его на токены, например. «2x + 2y» следует обозначить как: Number (2), Operator (multiply), Variable (x) Operator (sum) Number (2) Variable (y) Тогда вы можете делать все, что хотите, в качестве вывода – Jerzyk

ответ

1

Попробуйте этот код

<?php 
$string = "2x + 2y"; 
$result = preg_replace("/([0-9]+)([A-Za-z])/", "$1 * $2", $string); 
echo $result; 
?> 
Смежные вопросы