3

是否可以使用正则表达式语句创建 mod 11 校验位例程?

数字是一个 10 位数字,

步骤1:A =(2号*2)+(3号*4)+(4号*8)+(5号*5)+(6号*10)+(7号*9)+(8号) * 7) + (第 9 个数字 * 3))

第 2 步:B = A / 11(忽略余数)

第 3 步:C = B * 11

第 4 步:D = A - C

第 5 步:11 - D 必须 = 第 10 位

4

3 回答 3

4

不——基本上你想在这里做数学,这并不适合正则表达式,正则表达式只是关于模式。

我的意思是,理论上这当然是可能的——您可以列出所有有效数字,并将它们组合成一个巨大的正则表达式。但是,这实际上并不可行

于 2009-06-03T16:42:05.117 回答
4

使用正则表达式作为有限状态机。 http://quaxio.com/triple/

于 2015-06-15T12:12:27.657 回答
0

正则表达式进行模式匹配,而不是真正的解析。您需要解析数字以获取数字。我建议使用正则表达式来确保它是一个 10 位数字,然后使用 ToString() 并将其切碎。

于 2009-06-03T16:43:23.650 回答