SOURCE

// 增普表达式
pattern_zengzengpu = /^01,(10|04|01),\d{12},\d{8},([1-9]\d*(\.\d{1,2})?|0\.\d*[1-9]),[1-2]\d{3}((0[1-9])|(1[0-2]))(((0[1-9])|([1-2][0-9])|(3[0-1]))),(\d{20})?,[A-Z\d]{4},?$/;
// 增专表达式,第三段是10位的,而且没有校验码
pattern_zengzhuan = /^01,(10|04|01),\d{10},\d{8},([1-9]\d*(\.\d{1,2})?|0\.\d*[1-9]),[1-2]\d{3}((0[1-9])|(1[0-2]))(((0[1-9])|([1-2][0-9])|(3[0-1]))),(\d{20})?,[A-Z\d]{4},?$/;
pattern_pupiao    = /^01,(10|04|01),\d{12},\d{8},([1-9]\d*(\.\d{1,2})?|0\.\d*[1-9]),[1-2]\d{3}((0[1-9])|(1[0-2]))(((0[1-9])|([1-2][0-9])|(3[0-1]))),(\d{20})?,[A-Z\d]{4},?$/,
sample_pupiao = '01,10,035022100111,69355188,335.40,20210716,62897822300541667272,07D9,'
sample_zengzhuan = '01,01,1100204130,06676975,5574.34,20210326,,111A,'
//sample_zengzhuan = '01,01,1100204130,06676975,5574.34,20210326,,111A,'

result_zengzhuan = pattern_zengzhuan.test(sample_zengzhuan)


result_pupiao = pattern_pupiao.test(sample_pupiao)

console.log('增专验证:'+result_zengzhuan)
console.log('普票验证:'+result_zengzhuan)
console 命令行工具 X clear

                    
>
console