Как сопоставить любое описание комнаты с регулярным выражением в Mushclient - PullRequest
0 голосов
/ 22 февраля 2019

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

My Room Description(enter, n, s, e and w)
My Room Description(enter, e, s, w and n)
My Room Description(s, w, e, n and enter)
My Room Description(n, e, w, s and enter)

Направления выхода могут быть в другом положении, но в этом случае они всегда будут одинаковыми (4).

Это должно не соответствовать:

My Room Description(n, up, e, w, s and enter)

, потому что у него есть 5 выходов (кроме «enter»).

1 Ответ

0 голосов
/ 22 февраля 2019

Попробуйте это:

^My Room Description\((\w+(, | and )?){5}\)$

См. live demo .

——-

Чтобы разрешить дополнительный начальный текст, например "HP:245 EP:245 >> " согласно вашему комментарию:

^[\w: >]*My Room Description\((\w+(, | and )?){5}\)$

Или более строгое:

^([\w: ]* >> )?My Room Description\((\w+(, | and )?){5}\)$

Это ограничивает начальные символы только теми, которые вы указали в качестве примера.Чтобы разрешить что-либо:

^.*My Room Description\((\w+(, | and )?){5}\)$
...