我想生成一个与房间描述匹配的正则表达式,如下所示:
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个出口(“输入”除外)。
试试这个:
^My Room Description\((\w+(, | and )?){5}\)$
——-
要根据您的评论允许可选的主要文字,例如"HP:245 EP:245 >> "
:
^[\w: >]*My Room Description\((\w+(, | and )?){5}\)$
或者更严格:
^([\w: ]* >> )?My Room Description\((\w+(, | and )?){5}\)$
这会将前导字符限制为仅作为示例提供的字符。允许任何事情:
^.*My Room Description\((\w+(, | and )?){5}\)$