那些在一个字符串可能多地设有一个正则表达式匹配的元素

我目前正在接受以处理用户要求的表达滚骰子辊。

表达式可以采取这种形式(在其最长): 2d8(*2)(+20)[reroll=1] 我想提出的是一个正则表达式将检查表达式结构完善与否,我已经作出:

/^(\d+d\d+(\([\*]\d+\))?(\([\+]\d+\))?(\[reroll(>|=|<)\d+\])?[\+$]){1,}/

问题是,我想有一个正则表达式匹配那些将有括号/括号部分混合的表达式。 下面是我想正则表达式匹配,同时保持表情兼的每一个部分(除2D8部分)的表达式。

2d8(+20)(*2)[reroll=1] 2d8(*2)(+20)[reroll=1] 2d8(+20)[reroll=1](*2) 2d8(*2)[reroll=1](+20)

有没有办法做我想做而不做一个很长的正则表达式的重演太多。

感谢您的答案。

--------------解决方案-------------

成卷的语法是相当复杂,为什么不写一个解析器,而不是使用一个巨大的正则表达式?

分类:正则表达式 时间:2012-12-02 人气:0
本文关键词: 正则表达式
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.203 (s). 10 q(s)