我已经搜索了一段时间,但没有找到任何解决方案。例如,如果给定的范围类似[A0A0A0-A0P1M9]-它应该为给定范围提供所有可能的有效加拿大邮政编码。TIA。
示例:输入自:A0A0A0输入至:A0A0A4输出:A0A0A0、A0A0A1、A0A0A2、A0A0A3、A0A0A4
我会根据10和26进制的混合系统,将可能的字符串代码转换为连续数字,并将字符值乘以位置相关因子:
10*26*10*26*10
的char 026*10*26*10
的字符110*26*10
的char 226*10
的char 310
的char 41
的char 5
通常,我会将A..Z表示为0..25,只是(为了首先避免丢失W和Z字符处的间隙(我会调整该位置的映射。
然后,我会产生两个转换极限之间的所有数字,并用相反的方案将它们转换回来。
请注意,在最坏的情况下,A0A0..Y9Z9Z9将获得1600万个字符串。