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

JavaScript

Войти
Регистрация
Восстановить пароль
 
hoob777
5 / 5 / 1
Регистрация: 03.01.2015
Сообщений: 116
#1

Поиск имени в тексте, задание с CodeAcademy - JavaScript

16.04.2015, 11:42. Просмотров 365. Ответов 6
Метки нет (Все метки)

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var text = "Hello yoyoyo text text text text text text text text text text text text text text Dmitro text text text text text text text text yoyoyoy";
var myName = "Dmitro";
var hits = [];
for (i = 0; i < text.length; i++) {
    if (text[i] === myName[0]) {
        for (j = i; j < (myName.length + i); j++) {
            if (text[j] === myName[j-1]) {
                hits.push(text[j]);
            }
        }
    }
}
if (hits.length === 0) {
    document.write("Your name wasn't found!");
} else {
    document.write(hits);
}
indexOf и по regExp не нужно советовать Обьясните пожалуйста 2 цикла, с описанием что делается, сложно переварить всё, и почему в итоге в браузере выводится что имя not found.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2015, 11:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поиск имени в тексте, задание с CodeAcademy (JavaScript):

Поиск имени в тексте - JavaScript
Добрый вечер друзья. Совершенно недавно взялся за изучение javascript, очень много о нем слышал и наконец решил выучить это замечательный...

Поиск имени в массиве, введённом ранее - JavaScript
голос против избранное есть задани и к нему нужно написать скрипт,вот задание: Циклом заполнить массив с помощью команды prompt в...

Javascript: поиск объекта по части имени - JavaScript
Речь о счетчиках yaCounterXXXXXX, которые уже есть на странице. Как мне все их отыскать, чтобы можно было обращаться к ним? Нужно в...

Javascript поиск и замена в тексте - JavaScript
Добрый вечер! Помогите дорогие скриптеры, я в JS такоооой дуб! Понадобился мне скриптик на ява-скрипт, который ищет определенный...

Поиск номера телефона в тексте - JavaScript
Добрый день есть текст в блоке и в нем могут быть номера телефонов, мне нужно найти их, и занести через запятую в поле input например ...

Javascript (codeacademy - "'WHILE' LOOPS IN JAVASCRIPT(Dragon Slayer!)") - JavaScript
Пожалуйста, помогите прочитать этот код!!! var slaying = true; // A bit of new math magic to calculate the odds // of hitting the...

6
Shakalaka
Эксперт HTML/CSS
641 / 545 / 254
Регистрация: 27.01.2015
Сообщений: 1,373
16.04.2015, 13:07 #2
Цитата Сообщение от hoob777 Посмотреть сообщение
и почему в итоге в браузере выводится что имя not found.
Может потому, что в скрипте бред написан?)
Цитата Сообщение от hoob777 Посмотреть сообщение
if (text[i] === myName[0]) {
* * * * for (j = i; j < (myName.length + i); j++) {
а если строка будет такой "text text textD"? Выйдет, что последний символ строки совпадает с именем, а дальше цикл j < (myName.length + i) и text[j] но j уже больше длинны строки text. И это только начало, дальше бред похлеще... Короче, надо переделывать алгоритм)
0
BANO
Ренегат
Эксперт HTML/CSS
1476 / 1056 / 292
Регистрация: 06.08.2014
Сообщений: 5,203
Записей в блоге: 1
16.04.2015, 15:32 #3
а почему вы не хотите использовать всеми принятые регулярные выражения?
0
kalabuni
Супермизантроп
3050 / 2397 / 426
Регистрация: 18.04.2012
Сообщений: 7,081
17.04.2015, 00:13 #4
text.length возвращает количество символов в строке text (а никак не количество слов, как вам этого хочется)

text [i] возвращает i-тый символ строки text (а никак не i-тое слово, как вам этого хочется)

поэтому в строке кода
if (text[i] === myName[0]) вы поочередно сравниваете символы 'H', 'e', 'l', 'l' 'o',.. с подстрокой 'Dmitro'

чтобы свойство length возвращало количество слов, необходимо сначала из строки text получить массив arr, разбив её на элементы по пробелам var arr = text.split (' ');

вот тогда arr [i] вернёт вам i-тое слово
0
Fedor Vlasenko
Программист Php, Js
812 / 545 / 157
Регистрация: 01.02.2015
Сообщений: 1,675
17.04.2015, 01:12 #5
Javascript
1
2
3
4
5
6
function isStringName(str, name){
    return text.split(name).length > 1;
}
 
var text = "Hello yoyoyo text text text Dmitro t text text text text text text yoyoyoy";
alert(isStringName(text, 'Dmitro'));
0
Kerry_Jr
Модератор
Эксперт PHP
2207 / 2003 / 701
Регистрация: 14.05.2014
Сообщений: 5,870
Записей в блоге: 1
Завершенные тесты: 5
17.04.2015, 01:25 #6
Цитата Сообщение от kalabuni Посмотреть сообщение
поэтому в строке кода
if (text[i] === myName[0]) вы поочередно сравниваете символы 'H', 'e', 'l', 'l' 'o',.. с подстрокой 'Dmitro'
Вы готовы отстаивать свою точку зрения по этому поводу?
0
kalabuni
Супермизантроп
3050 / 2397 / 426
Регистрация: 18.04.2012
Сообщений: 7,081
17.04.2015, 05:37 #7
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
Вы готовы отстаивать свою точку зрения по этому поводу?
нэт, нэ готов, дворянский кодэкс нэ позволяэт дуэлировать с быдлом
0
17.04.2015, 05:37
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2015, 05:37
Привет! Вот еще темы с ответами:

Поиск файлов по части имени \ имени - Delphi
var SR: TSearchRec; Folder: String; begin Folder := 'D:\'; Folder := IncludeTrailingPathDelimiter(Folder); if...

Не работает код с codeacademy - jQuery
Добрый вечер! Занялся прохождением курсов на https://www.codecademy.com и для наглядности решил запускать код не на их сайте, а скопировав...

Задание имени поля - MS Access
Доброго времени суток всем! Задача такая: Имеется форма, в которой есть четыре поля с именами K1, K2, K3 и K4. Есть так же функция,...

Задание имени диапазону. - VBA
Доброго времени суток. В связи с производственной необходимостью начал осваивать ВБА для Эксель. Имеется таблица в одном из листов,...


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

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

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