【发布时间】:2016-04-13 17:04:52
【问题描述】:
我正在尝试创建一个正则表达式来匹配一个数字,其总和是奇偶校验,是偶数。所以 802 (8+0+2) 是偶数,而 902 (9+0+2) 是奇数。显然,有一个算术定律可以在不计算或违反任何 Regex 规则的情况下执行此 Regex。我为偶数做了一个正则表达式,但不是偶数。
编辑:允许接受前导零,数字可以是任意长度(显然小于大多数语言中 int 的最大大小)
谢谢!
【问题讨论】:
-
它应该包含多少位数字?
-
不要认为这是可能的。我相信您在问题中提到的算术与验证算术表达式有关。反向引用是我想到的最接近的事情,但这是用于括号匹配等的事情......
-
为什么不简单地使用编程来计算所有数字的总和并检查它是偶数还是奇数?
-
@nurchi 再想一想。不是不可能,看我的回答
-
人们,OP的问题不是是否有比正则表达式“更好”的方法来解决问题,他问的是正则表达式是否可行。有时,在编程中,使用工具或算法来解决给定问题的最佳理由是“因为我想”或“为了好玩”。