Мне необходимо в PHP, при помощи регулярки вытащить из строки все элементы текста, заключённые в скобки, для их дальнейшей обработки, пример строки:
(Ширина)*(Длина)+(Пользовательская константа)
Это мне нужно, чтобы в итоге заменить их на имена переменных в Js и получить строку вида:
Width*Height+User_constant
Данные для перевода - укажу в массиве, но не знаю как сделать саму замену. Если можете, то помогите хоть с регуляркой(поиск этого самого текста между скобками) и выведением результата в массив
вытащить из строки все элементы текста, заключённые в скобки
Дак preg_match_all() используйте:
$str = '(Ширина)*(Длина)+(Пользовательская константа)';
$pattern = '~\(\K.+?(?=\))~';
preg_match_all($pattern, $str, $arr);
var_dump($arr);
Результат:
array (size=1)
0 =>
array (size=3)
0 => string 'Ширина' (length=12)
1 => string 'Длина' (length=10)
2 => string 'Пользовательская константа' (length=51)
Я решил в данном случае использовать разделитель "|", т.к. скобки могут использоваться многоуровненно вроде ((x)+(y))/(z), теперь я отредактировал регулярное выражение
~\(\K.+?(?=\))~
и привел его к виду:
~\|\K.+?(?=\|)~
Теперь при запросе:
|Ширина двери|/|Цена бревна ев|-|Длина двери|
Я получаю:
[0]=> array(5){
[0]=> string(23) "Ширина двери"
[1]=> string(1) "/"
[2]=> string(26) "Цена бревна ев"
[3]=> string(1) "-"
[4]=> string(21) "Длина двери" }
}```
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Пытаюсь переместить запись с одной таблицы в другую с удалениемСначала нахожу ее $info= R::findOne("books", "book_id= ?", array($_POST['id'])); Потом пытаюсь вставить...
Необходимо вывести с mysql статьи так, чтобы они чередовались по блокамЧтобы через каждые 2 статьи - следующие 2 оборачивались блоком <div class="row"></div>
Необходимо с помощью PHP узнать по какому запросу из поисковика (яндекс/гугл) пришел посетитель на сайт