|
|
|
| привет! помогите пожалуйста разобраться как написать следующее рег выражение
есть строка, нужно вывести на экран только то что заключено между скобками ( )
<?php
$str = "text(выводим)текст(выводим два)";
if (preg_match(' что тут должно быть ', $str, $arr))
$value = $arr[0];
echo $value;
?>
|
| |
|
|
|
|
|
|
|
для: tima2010
(16.09.2011 в 12:31)
| | Можно начать отталкиваться от следующего скрипта
<?php
$str = "text(выводим)текст(выводим два)";
$pattern = "|\(([^)]+?)\)|";
if (preg_match_all($pattern, $str, $arr))
echo "<pre>";
print_r($arr[1]);
echo "<pre>";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(16.09.2011 в 13:05)
| | Спасибо! понял принцип
в чем моя ошибка?
<?php
$str = "text(выводим)текст(выводим два)";
$pattern = "|\(([^)]+?)\)|";
if (preg_match_all($pattern, $str, $arr))
foreach($arr as $value)
{
echo $value."<br />";
}
?>
|
выводит
:( | |
|
|
|
|
|
|
|
для: tima2010
(17.09.2011 в 13:18)
| | preg_match_all() возвращает двумерный массив, поэтому в foreach() следует указывать $arr[1]
<?php
$str = "text(выводим)текст(выводим два)";
$pattern = "|\(([^)]+?)\)|";
if (preg_match_all($pattern, $str, $arr))
foreach($arr[1] as $value)
{
echo $value."<br />";
}
?>
|
| |
|
|
|