|
|
|
| Подскажите есть ли функция которая удаляет все символы кроме определённых (перечисленных)
и то же самое для цыфр?
заранее спасибо!!! | |
|
|
|
|
|
|
|
для: Webmaster-X
(08.10.2006 в 21:39)
| | Ты лучше скажи для чего тебе это, так легче будет помочь. А так в голову ничего не приходит..единственное, так это замена опеределённых символов на пустое место.. | |
|
|
|
|
|
|
|
для: slonik
(08.10.2006 в 22:34)
| | Решил автоматом забивать <META name="Keywords" content=" "> при просмотре отдельной новости.
я забил в масив все слова через пробел, потом удалил все теги и сделал так
<?
for ($i=0; $i<$info_meta_count; $i++)
{
list($word)=split(" ",$info_meta[$i]);
$info_meta[] = $word . "\n";
}
$text_array = array_count_values($info_meta);
arsort($text_array);
reset ($text_array);
foreach ( $text_array as $key => $val )
{
$key=trim($key);
if(!is_numeric($key))
{
if ( strlen($key) > 2)
{
$META_Keywords[] = $key;
}
else
{
unset($key);
}
}
else
{
unset($key);
}
}
?>
|
обрезал на штуке...
но проскакивают такие значения как 14:12 и разные символы
вот я и ищю функции (наверное такие должны быть) , чтоб не подгружать скрипт перезаписованием символов на пустые места
=======================================
PS:
Чё создатели CMS не делают так? | |
|
|
|
|
|
|
|
для: Webmaster-X
(08.10.2006 в 21:39)
| | Как таковой функции нет, можно использовать рег. выражение:
<?
$text = 't%e^&*x@#$t';
echo preg_replace("/[^a-z]/i", "", $text).'<br>';
$text = 't1e2&3x4v5t';
echo preg_replace("/[^0-9]/", "", $text).'<br>';
$text = 't%e^&*x@#$t1%^2^&3';
echo preg_replace("/[^\w]/", "", $text).'<br>';
?>
|
(в кв. скобках - то, что разрешено испоьзовать в тексте) | |
|
|
|
|
|
|
|
для: kasmanaft
(08.10.2006 в 22:42)
| | Кстати, да :) Можно просто запретить определённые символы. | |
|
|
|
|
|
|
|
для: slonik
(08.10.2006 в 22:48)
| | >Кстати, да :) Можно просто запретить определённые символы.
можна подробнее..... | |
|
|
|
|
|
|
|
для: Webmaster-X
(08.10.2006 в 22:58)
| | Эм, ну не знаю, так как не вникал в эту задачку.. Но полюбэ можно какие-то символы при выводе инфы запретить, а какие-то разрешить.. | |
|
|
|
|
|
|
|
для: Webmaster-X
(08.10.2006 в 22:58)
| | И все же лучше не запрещать, а разрешать только то, что можно ... можно толкьо буквы - все кроме них убираем.
а определенные можно заменить используя ту же str_replace
<?
$text = 't!e%x@t';
$arr = array ('!', '@', '%');
echo str_replace ($arr, '', $text);
?>
|
| |
|
|
|
|
|
|
|
для: kasmanaft
(08.10.2006 в 23:11)
| | >а определенные можно заменить используя ту же str_replace
это то что я искал, спасибо
======================================================
теперь возникла следующая проблека
когда я загнал все в масив (выше весь пример, ниже часть кода) , одинаковые слова также вошли в масив.
Подскажите как избавиться от повторений
<?
if ( strlen($key) > 2)
{
$META_Keywords[] = $key;
}
?>
|
| |
|
|
|
|
|
|
|
для: Webmaster-X
(09.10.2006 в 13:50)
| | спасибо нашёл )))
array_unique(); | |
|
|
|