IT码农库

您当前所在位置:首页 > 网络编程 > 正则表达式

正则表达式

手把手教你使用正则表达式验证银行帐号

[db:来源] 孤岛02023-03-15正则表达式3997
银行卡号是一大串的数字,当然具有一定的规则,下面这篇文章主要给大家介绍了关于使用正则表达式验证银行帐号的相关资料,文中给出了具体的实例代码,需要的朋友可以参考下

前言

银行帐号是在任何特定银行开设账户后分配给账户持有人的唯一编号。从技术上讲,我们可以将银行帐号视为主键。银行帐号使我们能够入行借记、贷记和其他交易。根据 RBI 指南,银行帐号具有独特的结构。Account Number的结构如下:

银行帐号仅以数字形式书写。银行帐号长度从 9 位到 18 位不等。不答应有空格。不答应有特别字符。它包含从 0 到 9 的数字。

例子:

输进:str = ”635802010014976”

输出:True

解释:它匹配准确的银行帐号。

输进:str = ” UBIN0563587”

输出:False

解释:它不应包含任何字母字符。

输进:str = ”9136812@895_”

输出:False

解释:不答应使用下划线和特别字符。

输进:str = ”1 2071998”

输出:False

解释:不答应使用空格。

使用正则表达式验证帐号的方法

思路是用正则表达式来解决这个问题。Regex 将验证输进的数据并提供正确的格式。以下是可以针对该问题采取的步骤:

  • 接受字符串
  • 创建一个正则表达式模式来验证银行帐号:

正则表达式=”^[0-9]{9,18}$” 或正则表达式=”^\d{9,18}$”

  • ^ :-字符串的开头。
  • [0-9] :-匹配集合中的任何字符。
  • {9,18} :-匹配前面标记的 9 到 18。
  • $ :-字符串结尾。

下面是上述方法的代码实现:

// 使用正则表达式验证BANK ACCOUNT NUMBER的C++程序

#include <iostream>
#include <regex>
using namespace std;

// 验证银行账号的功能
bool isValid_Bank_Acc_Number(string bank_account_number)
{

	const regex pattern("^[0-9]{9,18}$");
	if (bank_account_number.empty()) {
		return false;
	}
	if (regex_match(bank_account_number, pattern))
	{
		return true;
	}
	else
	{
		return false;
	}
}

void print(bool value){	
	cout<<"Is this account valid: ";	
	if(value)
		cout<<"True"<<endl;
	else
		cout<<"False"<<endl;
}

int main()
{
	string str1 = "635802010014976";
	print(isValid_Bank_Acc_Number(str1));

	string str2 = "9136812895_";
	print(isValid_Bank_Acc_Number(str2));

	string str3 = "BNZAA2318JM";
	print(isValid_Bank_Acc_Number(str3));
	
	string str4 = " 934517865";
	print(isValid_Bank_Acc_Number(str4));

	string str5 = "UBIN0563587";
	print(isValid_Bank_Acc_Number(str5));
	
	string str6 = "654294563";
	print(isValid_Bank_Acc_Number(str6));

	return 0;
}

输出:

此帐户是否有效:True
此账号是否有效:False
此账号是否有效:False
此账号是否有效:False
此账号是否有效:False
此帐户是否有效:True

总结

到此这篇关于使用正则表达式验证银行帐号的文章就介绍到这了,更多相关正则表达式验证银行帐号内容请搜索以前的文章或继承浏览下面的相关文章希望大家以后多多支持!

大图广告(830*140)