UPC: Difference between revisions
Content added Content deleted
m (→{{header|zkl}}: broken comment) |
m (→{{header|zkl}}: mouse nuts) |
||
Line 344: | Line 344: | ||
r |
r |
||
}</lang> |
}</lang> |
||
Or, if you like way too long regular expressions |
Or, if you like way too long regular expressions: |
||
⚫ | |||
do lots of backtracking: |
|||
⚫ | |||
lhd.keys.concat("|","(",")")*6, "_#_#_", |
lhd.keys.concat("|","(",")")*6, "_#_#_", |
||
rhd.keys.concat("|","(",")")*6, "#_#", "_"*9 |
rhd.keys.concat("|","(",")")*6, "#_#", "_"*9)), |
||
digits=lhd.copy().extend(rhd); |
digits=lhd.copy().extend(rhd); |
||
fcn |
fcn parseBarCode(barcode){ // --> 12 digits |
||
if(not (upcRE.search(barcode) or upcRE.search(barcode.reverse()))) return(False); |
if(not (upcRE.search(barcode) or upcRE.search(barcode.reverse()))) return(False); |
||
upcRE.matched[1,*] // ( (a,b), "_#_####","_##___#", 10 more digit patterns ) |
upcRE.matched[1,*] // ( (a,b), "_#_####","_##___#", 10 more digit patterns ) |