|
|
|
| Есть массив, в нем один элемент - равен строке. Проходя по массиву циклом - нужно каждую строку проверять на наличие слов, содержащих, например, точку - и удалять эти слова из строки. Как? | |
|
|
|
|
|
|
|
для: Shorr Kan
(15.03.2006 в 12:08)
| | Точка должна быть в середине слова или может быть в начале и конце?
| |
|
|
|
|
|
|
|
для: cheops
(15.03.2006 в 12:59)
| | Может быть - где угодно.
$str="word1 word2 word.3 word4"
надо получить
$str="word1 word2 word4" | |
|
|
|
|
|
|
|
для: Shorr Kan
(16.03.2006 в 23:53)
| | . | |
|
|
|
|
|
|
|
для: Shorr Kan
(16.03.2006 в 23:53)
| | Можно поступить следующим образом
<?php
$str = "word1 word2 word.3 word4";
$pattern = "|[\w\d]*\.[\w\d]*|i";
$str = preg_replace($pattern, "", $str);
echo $str;
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(17.03.2006 в 12:46)
| | Здорово. А можно усложнить?
<?php
$str = "word1 word2 word.3 word4 www.ya.ru ddru http:/dd.c";
$pattern = "|[\w\d]*\.[\w\d]*|i";
$str = preg_replace($pattern, "", $str);
echo $str;
?>
Выдает
word1 word2 word4 ddru http:/
а хотелось бы
word1 word2 word4 ddru | |
|
|
|
|
|
|
|
для: Shorr Kan
(17.03.2006 в 14:00)
| | не силен в рег. выражениях perl (php лучше даются :)
но вроде получится так:
<?php
$str = "word1 word2 word.3 word4 www.ya.ru ddru http:/dd.c";
$pattern = "|[\w\d]*[\.:/][\w\d]*|i";
$str = preg_replace($pattern, "", $str);
echo $str;
?>
(в средних квадратных скобках - это то, чего не должно находиться в словах) | |
|
|
|
|
|
|
|
для: kasmanaft
(17.03.2006 в 19:45)
| | Отлично | |
|
|
|