Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/40: Рейтинг темы: голосов - 40, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 24.08.2011
Сообщений: 242

Удаление слов из строки

14.05.2007, 20:07. Показов 8229. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть строка например из 1000 слов. Как сделать чтобы в строке было например 100 слов?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.05.2007, 20:07
Ответы с готовыми решениями:

Удаление слов и символов из строки
Помогите, пожалуйста из строки '/comp/mode/cat/a:lake/b:baikal' убрать "a:" "b:" и "mode/cat/" Чтобы получилась строка...

Удаление слов из строки
Здравствуйте! помогите пожалуйста!!! нужно удалить из строки все слова, заканчивающиеся на букву к, если они есть. проверку сделала, а...

Удаление слов из строки
С клавиатуры ввести предложения. Вытереть с него слово, порядковый номер которого задает пользователь. Если номер слова превышает реальное...

14
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
14.05.2007, 21:45
Подсказка: задумайся что такое слово.
0
0 / 0 / 0
Регистрация: 24.08.2011
Сообщений: 242
14.05.2007, 22:46  [ТС]
bazile (14.05.2007)
Подсказка: задумайся что такое слово.
пробовал регулярные - не нравится мне (много возни). Может знаеш как проще?
Стандартных функций нет в пхп по этому поводу?
0
5 / 5 / 5
Регистрация: 24.10.2011
Сообщений: 269
14.05.2007, 23:13
XXXXXXX (14.05.2007)
Есть строка например из 1000 слов. Как сделать чтобы в строке было например 100 слов?
Например:



string substr ( string string, int start [, int length] )



substr() возвращает подстроку строки string длиной length, начинающегося с start символа по счету.



зы: смотри функции по работе со строками... (это и имел в виду bazile)...
0
0 / 0 / 0
Регистрация: 24.08.2011
Сообщений: 242
14.05.2007, 23:50  [ТС]
Vizlim (14.05.2007)
XXXXXXX (14.05.2007)
Есть строка например из 1000 слов. Как сделать чтобы в строке было например 100 слов?
Например:

string substr ( string string, int start [, int length] )

substr() возвращает подстроку строки string длиной length, начинающегося с start символа по счету.

зы: смотри функции по работе со строками... (это и имел в виду bazile)...
если так делать, то обрезаются слова.
Можете привести прмер как можно решить проблему (не обрезания слов, а смотреть тема топика) с помощю регулярных.
У меня слишком долго работает регулярка.
0
5 / 5 / 5
Регистрация: 24.10.2011
Сообщений: 269
15.05.2007, 02:49
XXXXXXX (14.05.2007)


Можете привести прмер как можно решить проблему (не обрезания слов, а смотреть тема топика) с помощю регулярных.




$str2="tt tdf qwe pos dfsj asgfsf sdjfkf dghdkv fdjsghfkjs jfghkjs fdkahkfgs fdsg sdfg sdf vbct werts g r rgdfws wefdh sfhgf sdgfg qwwq pfikg adfjsd asjfhkf djkhfsk ksjdf skdh aksd";



$str2=preg_replace('/((s.*?){5})/m',' $1 <br >',$str2);



echo $str2;
0
 Аватар для KeyGen
388 / 295 / 21
Регистрация: 07.08.2011
Сообщений: 790
Записей в блоге: 1
28.06.2013, 21:52
@Vizlim, Это так норально работает твоя регулярка?:

Цитата Сообщение от Vizlim Посмотреть сообщение
PHP
1
2
3
$str2="tt tdf qwe pos dfsj asgfsf sdjfkf dghdkv fdjsghfkjs jfghkjs fdkahkfgs fdsg sdfg sdf vbct werts g r rgdfws wefdh sfhgf sdgfg qwwq pfikg adfjsd asjfhkf djkhfsk ksjdf skdh aksd";
$str2=preg_replace('/((s.*?){5})/m',' $1 <br >',$str2);
echo $str2;
Вывод:

HTML5
1
2
3
4
5
6
7
8
9
tt tdf qwe po s dfsj asgfsf s 
    <br></br>
      djfkf dghdkv fdj sghfkjs jfghkjs fdkahkfgs fds 
    <br></br>
      g  sdfg sdf vbct werts g r rgdfws wefdh s 
    <br></br>
      fhgf  sdgfg qwwq pfikg adfjsd asjfhkf djkhfsk ks 
    <br></br>
      jdf skdh aksd
0
 Аватар для Stifard
5 / 5 / 1
Регистрация: 12.05.2013
Сообщений: 37
28.06.2013, 22:10
Цитата Сообщение от code
C++
1
2
3
4
5
6
i = 100
while(i != ' ')
{
  i++
}
string.substr(0, i)
Набранное вами сообщение слишком короткое. Увеличьте ваше сообщение до 3 символов.
0
 Аватар для KeyGen
388 / 295 / 21
Регистрация: 07.08.2011
Сообщений: 790
Записей в блоге: 1
28.06.2013, 22:21
Вот нашел прикольную регулярку выберает слова из текста:

PHP
1
2
3
$x="Типа, %^& читайте___люди~~~~__маны__  На... РУССКОМ!! Будете+здоровы.  abc, qwe, zxc";
preg_match_all('/([a-zA-Zа-яА-Я]+)/u',$x,$ok);
for ($i=0; $i<count($ok[1]); $i++) echo $ok[1][$i]."<br>";
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.06.2013, 22:36

Не по теме:

@KeyGen, последнее сообщение в этой теме было в 2007 году, а последняя активность Vizlim была более полутора лет назад. Вы всерьез считаете, что он вам ответит?)))


Цитата Сообщение от KeyGen Посмотреть сообщение
Code
1
/([a-zA-Zа-яА-Я]+)/u
можно чуть проще
Code
1
/([a-zа-я]+)/ui
или вот так, к примеру
Code
1
/([^\s.?,-]+)/
0
 Аватар для KeyGen
388 / 295 / 21
Регистрация: 07.08.2011
Сообщений: 790
Записей в блоге: 1
28.06.2013, 22:43
Цитата Сообщение от KOPOJI Посмотреть сообщение
можно чуть проще
Не получается удалить указанное руское слово без учета регистра. Посдкажите.

Пробую так:
PHP
1
2
$reg = "/$remove_word/i";
$generate_href = preg_replace($reg, "", $generate_href);
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.06.2013, 22:49
так это не указанное русское слово. Это "Набор кириллических и латинских символов, и/или цифр, в количестве одного или более". Для указанного слова нужно как-то так
PHP
1
$generate_href = preg_replace('/указанное_слово/u', "", $generate_href);
причем скобки здесь не нужны (все равно не используется)

Добавлено через 37 секунд
можно также указать число замен - четвертый аргумент
0
 Аватар для KeyGen
388 / 295 / 21
Регистрация: 07.08.2011
Сообщений: 790
Записей в блоге: 1
28.06.2013, 22:52
Цитата Сообщение от KOPOJI Посмотреть сообщение
Для указанного слова нужно как-то так
Да но так удаляются не только слова. Например:

Строка: "Русский Рус"
Удаляем: "Рус"
Итог: "ский"
Должно получится: "Русский"
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.06.2013, 23:24
можно как-то так
PHP
1
echo preg_replace('~(?!<\w)слово(\W)~ui', '$1', '.................');
к сожалению, не особо силен в регулярках, может, Vovan-VE или еще кто-то поумнее приведет вариант лучше

Добавлено через 3 минуты
регулярка неверная
1
 Аватар для KeyGen
388 / 295 / 21
Регистрация: 07.08.2011
Сообщений: 790
Записей в блоге: 1
29.06.2013, 15:40
Попробовал так:
PHP
1
$value = 'йц'; $generate_href=preg_replace("/[\W]($value)[\W]/ui"," <b>\\1</b> ",$generate_href);
Вроде даже работает но выберает почему-то через одну...:

ЙЦ йц йц йцйц йцйц йц йц йц йц йцйц йцйц йц

Добавлено через 50 минут
А вот так выберает наоборот (слова которые не нужно удалять):

PHP
1
$generate_href=preg_replace("/\w+$value*\w+/ui"," <b>\\0</b> ",$generate_href);


Добавлено через 31 минуту
Заработало!:
PHP
1
$generate_href = preg_replace("/\b($value)\b/ui", '', $generate_href);
Добавлено через 14 часов 7 минут
Подскажите, проблемка:
PHP
1
$generate_href = preg_replace("/\b($value)\b/ui", '', $generate_href);
У меня на локалке заработало как часы, а вот на серваке не работет. В чем может быть проблема?
Версии php: local: PHP 5.3.10-1ubuntu3, server: PHP 5.3.3-7+squeeze14
Может быть проблема в версии?

Добавлено через 12 минут
Проблема только с Русским языком. Английский работает...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.06.2013, 15:40
Помогаю со студенческими работами здесь

Строки. Удаление слов
1)Даны два слова(1 строка) . Из первого слова удалить все буквы, которые встречаются во втором слове.

Удаление слов из строки
Здраствуйте программисты помогите пожалуста с задачей! Дана строка (Можно Edit или Memo) в которой необходимо удалить все слова...

Удаление слов из строки.
Необходимо реализовать на языке Си функцию удаление нечетных слов из строки. void drop_strings(char string, int kol) { int i, k; ...

Удаление слов из строки
Доброго вам времени провождения. Помогите пожалуйста с программой. Нужно написать программу, в которой программа должна удалять последнее...

Удаление слов из строки
Задание заключается в том, чтобы удалить из строки слова, которые имеют в наличии менее 5и символов. Сделал программу, но почему-то не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru