Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.08.2013, 17:27
Новичок на форуме
Отправить личное сообщение для AlexKotov Посмотреть профиль Найти все сообщения от AlexKotov
 
Регистрация: 26.08.2013
Сообщений: 5

необходимо написать функцию поиска всех слов в строке, не содержащих подстроку
Подходящие слова необходимо записать в массив.
Подстрока может состоять из любого количества букв.
Ответить с цитированием
  #2 (permalink)  
Старый 26.08.2013, 18:23
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 26,530

AlexKotov,
код ваших попыток где?
Ответить с цитированием
  #3 (permalink)  
Старый 26.08.2013, 18:35
Аватар для Demath
Профессор
Отправить личное сообщение для Demath Посмотреть профиль Найти все сообщения от Demath
 
Регистрация: 22.06.2012
Сообщений: 168

Сообщение от AlexKotov
необходимо написать функцию поиска всех слов в строке, не содержащих подстроку

Подходящие слова необходимо записать в массив.
Подстрока может состоять из любого количества букв.
Очень неопределённая постановка задачи.

Пример приведите - "Вход" и "Выход".
Ответить с цитированием
  #4 (permalink)  
Старый 26.08.2013, 19:58
Новичок на форуме
Отправить личное сообщение для AlexKotov Посмотреть профиль Найти все сообщения от AlexKotov
 
Регистрация: 26.08.2013
Сообщений: 5

Вот мой код для похожей задачи, где в выходной массив нужно выписать все слова, содержащие подстроку.
Но он мне мало помогает понять, как надо решить текущую задачу.

var wordsContains = function(str, sub) {
if( (arguments.length == 0) || (arguments.length == 1) || (arguments.length > 2) ) return str;
var pattern = '\\w*' + sub + '\\w*';
var reg = new RegExp(pattern, 'gi');
return str.match(reg);
};

console.log( wordsContains('Hello!hello!olo!world', 'o') );

Выход: ["Hello", "hello", "olo", "world"]

Последний раз редактировалось AlexKotov, 26.08.2013 в 20:02.
Ответить с цитированием
  #5 (permalink)  
Старый 26.08.2013, 20:39
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 26,530

AlexKotov,

var wordsContains = function(str, sub) {
   var separator = '[а-яёa-z]';
   var pattern = separator + '*' + sub + separator + '*';
   var reg = new RegExp(pattern, 'gi');
   var arr = str.replace(reg, '')
   reg = new RegExp(separator+ '+', 'gi');
   arr = arr.match(reg)||[]
   return arr

 }
 alert(wordsContains('Привет! Hello!hello!olo!world  qwerty', 'o'));

Последний раз редактировалось рони, 26.08.2013 в 20:42.
Ответить с цитированием
  #6 (permalink)  
Старый 27.08.2013, 14:59
Новичок на форуме
Отправить личное сообщение для AlexKotov Посмотреть профиль Найти все сообщения от AlexKotov
 
Регистрация: 26.08.2013
Сообщений: 5

Спасибо!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск