我正在使用markjs搜索页面并突出显示将被视为骰子的内容。所以它使用正则表达式/([1-9]\d*)?d(?:4|6|8|10|12|20)([+-]\d+)?/i
,当文本被格式化为1d10+2
时实际上工作得很好但是如果文本有任何空格,它只抓取突出显示第一部分。例如,如果相同的东西写成1d10 + 2
它只会突出显示1d10
。
我可以在我的正则表达式中调整一些能够解释+
或-
符号周围空间的东西吗?
你可以使用\s
作为空格,所以你的正则表达式可能是这样的:
([1-9]\d*)?d(?:4|6|8|10|12|20)\s?([+-]\s?\d+)