Форум программистов, компьютерный форум, киберфорум
Наши страницы

PHP

Войти
Регистрация
Восстановить пароль
 
Риназ
18 / 1 / 0
Регистрация: 16.06.2017
Сообщений: 314
#1

Как сделать цикл для того, чтобы достать лишь 1 слово? - PHP

10.05.2018, 15:15. Просмотров 113. Ответов 8
Метки нет (Все метки)

Всем привет! Есть текст. Из этого текста я достаю 1 предложение, потом разбиваю на слова и помещаю эти слова в массив.
Вопрос: Как сделать цикл, который выводит только 1 слово из массива.
Например: Слово, которое мне нужно, находиться на 5 месте. Мне надо найти это слово с помощью цикла. Если 1-ое слово не ровняется нужному, то надо проверить 2-ое слово и так до последнего слова. Если нужного слова нету, то вывести сообщение (Например: Ошибка!).
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2018, 15:15
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как сделать цикл для того, чтобы достать лишь 1 слово? (PHP):

Как сделать так чтобы функция не выполнялась до того момента когда она получит второй параметр - PHP
Как сделать так чтобы функция не выполнялась до того момента когда она получит второй параметр. Почемуто она у меня начинает выполнятся до...

Как сделать голосование лишь один раз ? - PHP
Всем привет ! Сделал голосование на своем сайте, все норм работает, но столкнулся с такой проблемой. Как сделать, что-бы пользователь смог...

Как сделать чтобы разные пользователи получали данные из бд только для них - PHP
Добрый день. Вопрос такой возник, вот у меня есть php страница которая получает набор данных из бд(из таблицы). Как можно сделать так,...

Как сделать, чтобы в на сайте юзеры могли видеть друг-друга и соединяться для игры? - PHP
Как сделать, чтобы в на сайте юзеры могли видеть друг-друга и соединяться для игры (типа Бойцовский клуб www.combats.ru). P.S. Я в PHP...

Как достать переменную и обработать так чтобы она отображалась в index.tpl? - PHP БД
Здравствуйте:handshake: У меня не обычная проблема) У меня есть админка и мне нужно при заходе в нео что бы отображалась сверху имя...

форма для комментариев скрыта как сделать чтобы она была открытой.(обычная) - PHP БД
В общем вот сам код <ul id="commentRoot"> <li id="newComment"> <div class="commentContent"> <div...

8
Sound84
4 / 4 / 3
Регистрация: 05.03.2018
Сообщений: 33
10.05.2018, 20:57 #2
PHP
1
2
3
4
5
6
7
8
9
10
11
12
foreach($my_array as $str) {
 
 if ($str == ($text)) {
  $result = true;
 }
}
 
if ($result === true) {
echo "Слово найдено";
}else{
echo "Слово не найдено";
}
Как-то так.
0
Риназ
18 / 1 / 0
Регистрация: 16.06.2017
Сообщений: 314
10.05.2018, 21:03  [ТС] #3
Sound84, Не могли бы комментировать строчки? А то я ничего не понял
0
Sound84
4 / 4 / 3
Регистрация: 05.03.2018
Сообщений: 33
10.05.2018, 21:25 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
PHP
1
2
3
4
5
6
7
8
9
10
11
12
foreach($my_array as $str) { // my_array массив со словами переменная $text что нужно найти в массиве
 
 if ($str == ($text)) {
  $result = true; //если нашли вернули истину
 }
}
 
if (isset($result) and $result === true) {
echo "Слово найдено";
}else{
echo "Слово не найдено";
}
Так понятней?
1
Риназ
18 / 1 / 0
Регистрация: 16.06.2017
Сообщений: 314
10.05.2018, 21:30  [ТС] #5
Sound84, Спасибо большое!
0
Риназ
18 / 1 / 0
Регистрация: 16.06.2017
Сообщений: 314
15.05.2018, 16:30  [ТС] #6
Sound84, можно ли найти так:
Например: Есть текст: Привет как дела? У меня хорошо, а у тебя как?
И слово: как
В данном случае в обеих предложениях есть слово как(т.е. всего 2).
Можно ли сделать условие, если их больше 2, то начать цикл, который берет первое слово с текста и ставит после слова. Если такое нету, то берет второе слово и т.д, пока не получится "как дела"?
Т.е. должно получится так: Как Привет(нет), как как(нет), как дела(есть).
0
Sound84
4 / 4 / 3
Регистрация: 05.03.2018
Сообщений: 33
16.05.2018, 10:02 #7
то начать цикл, который берет первое слово с текста и ставит после слова. Если такое нету, то берет второе слово и т.д,
Не особо понятна задача!
0
Риназ
18 / 1 / 0
Регистрация: 16.06.2017
Сообщений: 314
16.05.2018, 12:41  [ТС] #8
Sound84, тогда постараюсь объяснить на примере:
Есть 2 текстовых поля. На первое поле пользователь вводит слова(любые)
раз два три четыре пять
, а на второе предложение(любое)
Сегодня в четыре часа утра показывали кино
И у меня есть большой текст.
Начинается проверка на наличие слов в тексте. В моем тексте 3 раза используется слово "четыре". И т.к. это слово используется больше одного раза, то начинаем взять по одной слове с предложения, который ввел пользователь. И делать это до тех пор, пока в тексте не найдем такую комбинацию слов или пока не закончится предложение. Должно получится так:
четыре Сегодня (такой комбинации в моем тексте нету, продолжаем).
четыре в (нету, продолжаем)
четыре часа (есть, останавливаем цикл и выводим эту комбинацию(четыре часа)).
0
Sound84
4 / 4 / 3
Регистрация: 05.03.2018
Сообщений: 33
16.05.2018, 19:21 #9
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
$caunt = 0;
// $array массив с вашим текстом. 
foreach($my_array as $str) { // my_array массив со словами переменная $text что нужно найти в массиве
 
 if ($str == ($text)) {
  $result = true; //если нашли вернули истину 
 }
 
 
 if ($caunt > 1) {
   $text_str =  $str." ".$tmp_text; 
   break;
 }
  
   foreach($array as $str_text) {
    
    if ($caunt > 1) $tmp_text = $str_text;
    break;
 
        
    if ($str_text == ($str)) {
     $caunt++; 
    }
   
   }
 
}
 
if (isset($result) and $result === true) {
echo "Слово найдено<br />";
print "$text_str";
}else{
echo "Слово не найдено<br />";
print "$text_str";
}
Если правильно понял.
0
16.05.2018, 19:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2018, 19:21
Привет! Вот еще темы с ответами:

Как сделать закладки для того, чтобы спрятать текст? - Joomla
Приветствую господа. Вопрос такой. Хочу на сайте сделать закладки (вкладки) на каждой странице, в который буду размещать текст. Вот здесь...

Как сделать POST запрос на ask.fm для того чтобы задать вопрос человеку из консоли - C# MVC
Подскажите как сделать POST запрос на ask.fm для того чтобы задать вопрос человеку из консоли c#. Вот как выглядит форма для запроса: ...

Как сделать так чтобы факториал находился лишь из целых неотрицательных чисел? - Delphi
Приветствую вас, форумчане. Подскажите, как сделать так чтобы факториал находился лишь из целых неотрицательных чисел? В противном случае...

Как сделать, чтобы картинка менялась при наведении не на всю картинку, а лишь на часть ее? - JavaScript
Пример: фото человека, если навести курсор на его глаз, картинка меняется (появляются темные очки) и активизируется ссылка, которая ведет...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru