Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Поиск слова по строке (https://javascript.ru/forum/misc/49424-poisk-slova-po-stroke.html)

Georrg 12.08.2014 19:15

Поиск слова по строке
 
Да, вопрос уже давно затертый, и туча примеров на первой же странице, но! Мне нужно искать в строке id-шники, и никак нельзя допустить ошибки. Приведу пример:
var str="1 2  4 22 34";
var id=3;
if(!str.indexOf(id)) {
	//me code
}

Так вот, исходя из этого, в строке существует тройка, и скрипт добавить не добавить нужный обработчик. Как экранировать это? Прошу проявить терпение и понимание, я на скрипте только недавно что- то писать начал:write: . Желательно приведите пример:thanks:

ixth 12.08.2014 19:26

indexOf возвращает -1 в случае, если ничего не находит тебе надо делать не !str.indexOf(id), а str.indexOf(id) > -1.
http://javascript.ru/String/indexOf

Georrg 12.08.2014 20:29

Спасибо всем, нашел решение:
 
var str=" 1 2  4 53 ";
var id=3;
str.indexOf(" "+id+" ")==-1){

}

Как всегда истина лежала на поверхности);)

ixth 12.08.2014 20:49

Не обязательно складывать со строкой, ЕМНИМС.

WorM32 13.08.2014 09:50

ixth,
В данном случае обязательно) Иначе результат поиска будет неправильный.

ixth 13.08.2014 11:01

Тогда уж str.split(' ').indexOf(id).

WorM32 13.08.2014 11:35

Цитата:

Сообщение от ixth (Сообщение 325606)
Тогда уж str.split(' ').indexOf(id).

да, я бы так тоже сделал)


Часовой пояс GMT +3, время: 17:02.