Страницы

Поиск по вопросам

понедельник, 22 октября 2018 г.

Как сделать поисковый сниппет на Javascript?

Javascript. Есть массив со статьями. По ним происходит поиск через indexOf.
Как сделать сниппет аля гугл? То есть брать первое вхождение в строке и выдергивать несколько слов справа и слева?
Например ищем слово file в строке:
Edit config.toml and change the default properties to suit your own information. This is not required to run the example, but this is the global configuration file and you're going to need to use it eventually. Start here!
In a command prompt or terminal, navigate to the path that contains your config.toml file and run hugo. That's it! You should now have a public directory with a complete blog! Open public/index.html in your browser and bask.
If that wasn't amazing enough, from the same terminal, run hugo server. This will watch your directories for changes and rebuild the site immediately, and it will make these changes available at http://localhost:1313/ so you can view your finished site in your browser. Go on, try it. This is one of the best ways to preview your site while working on it.
И получить сниппет:
...global configuration file and you're...


Ответ

Можно так, как вариант:
var str = 'navigate to the path that contains your config.toml file and run hugo';
console.log(snippet(str, 'file'));
function snippet(stringToSearch, phrase) { var regExp = eval("/(\\S+\\s){0,3}\\S*" + phrase + "\\S*(\\s\\S+){0,3}/g") return stringToSearch.match(regExp); }

Комментариев нет:

Отправить комментарий