即时银行帐号验证

Posted

技术标签:

【中文标题】即时银行帐号验证【英文标题】:On-the-fly bank account numbers verification 【发布时间】:2012-05-18 05:44:00 【问题描述】:

今天我不得不将一个真实的(死树)信件中的银行帐号复制到 Emacs 缓冲区,然后通过电子邮件发送。我在将它从字母复制到 Emacs 缓冲区时犯了一个错误(忘记了一位数字)。这导致一位同事在一封电子邮件中告诉我:“无法付款,伪造的 IBAN”

创建一个函数/次要模式有多难:

检测看起来像 IBAN 的“事物”(例如,两个大写字母后跟在“x”和“y”数字之间,忽略空格等。有现成的正则表达式可以验证是否看起来像 IBAN)

运行 mod 97,如果 IBAN 看起来无效,则以红色突出显示

理想情况下,我需要一个可以为多种类型的缓冲区(愚蠢的文本文件,还有电子邮件等)打开的次要模式。

使用 Emacs 的“方法”是什么?

【问题讨论】:

这不是一个可以回答的问题,除非有人说“不太难”或“非常难”,否则您会接受。请编辑以提出一个特定的问题,而不是一个通用的“它有多难?”。谢谢。 :) 也许回答他想问的问题,而不是他实际问的问题。做出这样做所需的假设存在一定风险,但在这种情况下,我认为这是有道理的。 我记得写了一个函数来回应这个问题,但我似乎从未发布过答案。如果有兴趣,请私信我,我看看能不能挖出来。 【参考方案1】:

你可以很容易地使用类似的东西

(font-lock-add-keywords nil
  '(("[A-Z][A-Z][0-9]\\x,y\\"
     (0 (if (eq (mod blabla 97) foo) nil 'font-lock-warning-face))))))

只需填写blabla。

【讨论】:

Emacs 总是让我惊叹:)

以上是关于即时银行帐号验证的主要内容,如果未能解决你的问题,请参考以下文章

如何检查 IBAN 验证?

存储银行帐号

在 Web 表单中接受但不保存银行帐号

Woocommerce 删除订单感谢页面上的银行帐号

从 IBAN 银行帐号生成 BIC

如何在 maximo 中隐藏具有类似于银行帐号的特殊字符的字段值