2016-11-06 2 views
2

Если я создаю условный оператор, как это, она работает:Что я могу Позвоните фильтровать строки Результата

if (this.category === 'male') { 
    console.log('Male'); 
    this.query = this.query.substr(1, 3); 
} 

Но что я могу использовать для фильтрации не числовое позиционирования на строке, но фактические символов? Я хочу оценить «this.query», который является строкой, и фильтровать на основе определенных символов. Я не могу вызвать фильтр на строку, так что я могу использовать? Я не хочу просто оценивать его, я хочу вернуть новый результат на основе тех серий символов, которые есть. Это ускользает от меня.

+0

Не уверен, что ожидаемый результат? Что вы подразумеваете под «не числовым позиционированием»? – guest271314

+0

Я использую это, чтобы отфильтровать список результатов, которые были созданы в поиске. Первое условие, использующее substr, будет генерировать эти результаты. Но я хочу повторно генерировать результаты на основе определенной серии персонажей. Я использовал только пример substr, чтобы увидеть, могу ли я получить результаты поиска для повторного создания. И это сработало. Пользователь нажимает на категорию «мужчина», и результаты регенерируются на основе субстрата. Но как я могу это сделать, например, «мужчина» включен в результат строки? – Muirik

+0

Что такое «определенная серия персонажей»? Что должно произойти, если последовательности строк не существуют в строке? – guest271314

ответ

1

Если интерпретировать вопрос правильно, вы можете использовать String.prototype.match()

if (this.category === 'male') { 
    console.log('Male'); 
    this.query = this.query.match(this.category)[0]; 
} 
+0

Было бы здорово, если бы я мог, Я попробую, спасибо. – Muirik

+0

Обратите внимание, что вы можете использовать 'RegExp'' новый RegExp (this.category, "g") 'как параметр для' .match() ', если вы хотите вернуть массив совпадений. – guest271314

+0

не работает, к сожалению. Результаты не регенерируются, как они, когда я использую substr условный. Любые идеи? – Muirik

Смежные вопросы