Получить слова в строке Javascript - PullRequest
0 голосов
/ 11 января 2020

Я новичок в выражениях регулярных выражений. Я хочу, чтобы каждое слово в строке между двумя символами. уже пробовал следующие вопросы стека:

  1. Получить подстроку между двумя символами, используя javascript

  2. Обычный выражение, чтобы получить строку между двумя строками в Javascript

но ничего не работает для меня, я что-то упускаю наверняка. но что смущает.

Suppose a "string": /path/__mutation/module1/__resolver/module2
Get directories between character: "__" and "/" // console.log() => [mutation, resolver] 

Но, пытаясь ответить на два вопроса выше, мы создадим что-то, что может получить все специальные каталоги, такие как мутация, распознаватель по пути.

Вот что я пробовал.

var __path = /path/__mutation/module1/__resolver/module2

1. console.log(__path.match(/__(.*)?\//g))
// [ '__mutation/login/withMobileNumber/' ]
// [ '__mutation/register/withMobileNumber/' ]
// [ '__mutation/raw/__mutation/register/__resolver/rock/' ]

2. console.log(__path.match(new RegExp(`__` + '(.*)' + `/`)))
// null
consider `Template_String` as variable with those symbols
...

1 Ответ

1 голос
/ 11 января 2020

Сначала разбейте на '/', а затем отфильтруйте на /^__.+/, затем сопоставьте с обрезкой:

let path = '/path/__mutation/module1/__resolver/module2'
path.split(/\//).filter(p => /^__.+/.test(p)).map(p => p.replace(/__/,''))

// yields:  (2) ["mutation", "resolver"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...