所以我有一些以do while循环为中心的代码.
string token;
var count = 0;
var checkDataLength= data.Length == 16;
do
{
count = 0;
token = GenerateToken(data, start, end);
if (checkDataLength)
{
if (Mod120Check(token))
{
count += 1;
}
}
if (IsCompliant(token))
{
count += 1;
}
}
while (count > 0);
return token;
Run Code Online (Sandbox Code Playgroud)
基本上,我正在生成一个令牌,并且为了使此令牌有效,必须将Mod120Check和IsCompliant检查失败.我无法改变这些方法返回数据的方式.
虽然上面的代码有效,但我觉得它很难看,我想知道是否有人有更好的方法吗?
谢谢
这是我在Oracle SQL查询中尝试做的事情:
我有一个X字符长的帐号(例如:6001055555).我有一个表具有相同帐号的一部分,但大部分数字都被屏蔽(例如:600 ##########,6001 ######,600244 ####).
我试图将6001055555中传递的数字与以下值600 ##########,6001 ######,600244 ####中的一个相匹配.
在此示例中,帐号6001055555应返回6001 ######(来自上面的列表).我可以达到长度相同但不确定如何解决匹配的问题 - 我正在考虑使用REGEX表达式,但我不确定这是否是正确的路径.