加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 用于BIC检查的正则表达式

发布时间:2020-12-13 17:27:02 所属栏目:PHP教程 来源:网络整理
导读:我为 PHP函数pregmatch写了一个正则表达式,就是这样的: ^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$^ 现在我需要检查一个BIC字符串的一致性. 有什么问题吗?它总是正确的.我不知道为什么. 我使用的代码是这样的: /** * Checks the cor
我为 PHP函数pregmatch写了一个正则表达式,就是这样的:
^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$^

现在我需要检查一个BIC字符串的一致性.

有什么问题吗?它总是正确的.我不知道为什么.

我使用的代码是这样的:

/**
 * Checks the correct format from the 
 * @param string $bic
 * @return boolean
 */
public function checkBic($bic)
{
    $bic = $this->cleanFromSeparators($bic);
    if (preg_match($this->getBicCompare(),$bic)) {
        return true;
    } else {
        return false;
    }
}

private function getBicCompare()
{
    return "^([a-zA-Z]){4}([a-zA-Z]){2}([0-9a-zA-Z]){2}([0-9a-zA-Z]{3})?$^";
}

编辑:

以下是来自swift帐户的BIC格式的一些参考:

http://www.sage.co.uk/sage1000v2_1/form_help/workingw/subfiles/iban_and_bic.htm

http://en.wikipedia.org/wiki/ISO_9362

http://www.swift.com/products_services/bic_and_iban_format_registration_bic_details?rdct=t

BIC的一个例子是:

NOLADE21STS

OPSKATWW

如果字符串由以下代码组成,那么正则表达式应该只返回true:
其长度为8或11个字符,包括:

银行代码 – 4个字母字符
国家代码 – 2个字母
位置代码 – 2个字母数字字符,零除外
分行代码 – 3个字母数字字符

这些是规格.

所以长度可以是11或8,前4个可以是任何东西,那么2个字母是必须的,那么2个数字和可选的3个字母数字.

以下内容无效:

abcdefxx

abcdefxxyyy

这些也是无效的:

aaaa11xx

aaaa11xxyyy

等等.

你使用^作为分隔符?你可能想要一些更像:
'/^[a-z]{6}[0-9a-z]{2}([0-9a-z]{3})?z/i'

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读