что означают эти выражения? `$ {путь к серверу} / ** /! (*. spec | * .integration) .js`

1
'${server Path}/**/!(*.spec|*.integration).js',

Могу ли я спросить приведенный выше код, что делает **, *, | , * стоять? что я могу найти для чтения?

  • 1
    Этот код сам по себе просто создает строку. В принципе, строку можно использовать для чего угодно, но вполне вероятно, что любой другой код, использующий эту строку, планирует использовать ее для сопоставления с образцом файлов. * В контексте сопоставления с шаблоном * являются символами подстановки, которые могут соответствовать чему угодно ! означает «не», | означает «или».
  • 0
    Я согласен, но это больше похоже на псевдокод, поскольку ${server Path} не будет корректно проверяться. Больше похоже на инструкции API или что-то из README.
Показать ещё 1 комментарий
Теги:
testing
gulp

1 ответ

1
Лучший ответ

Это похоже на синтаксис glob для меня:

https://www.npmjs.com/package/glob

https://en.wikipedia.org/wiki/Glob_(programming)

* соответствует всему, кроме косой черты, поэтому он будет соответствовать любому файлу, но он не будет соответствовать подпапкам.

** соответствует всем, включая косые черты, поэтому можно искать подпапки.

| это просто OR.

! означает НЕ.

  • 0
    Большое спасибо !

Ещё вопросы

Сообщество Overcoder
Наверх
Меню