import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(^[0-9]{8})(?: )([0-9]{2}\\/[0-9]{2}\\/[0-9]{4})";
final String string = "//INIZIO//\n"
+ "19300011 08/01/2019\n"
+ "COMPARIN SYSTEM S.R.L.\n"
+ "VIA F.TASCA 145\n"
+ "35010 SAN PIETRO IN GU PD\n"
+ "Italia\n"
+ "COMPARIN SYSTEM S.R.L.\n"
+ "VIA F.TASCA 145\n"
+ "35010 SAN PIETRO IN GU PD\n"
+ "Italia\n"
+ "ASSEGNATO\n"
+ "N.Ord. Peso\n"
+ "1 A.2018/003 NR 800 CAVALL.CENTR.SINGOLO RIPIEGATO /\n"
+ "2 A.4006/D51 NR 800 ASSIEME CONTATTO DX INVERTITOR / 2655,200\n"
+ "3 A.4006/S51 NR 800 ASSIEME CONTATTO SX INVERTITOR / 3112,000\n"
+ "4 A.4039/D52 NR 3000 ASSIEME CONTATTO TERRA BIVALEN / 12393,000\n"
+ "5 A.4039/S52 NR 5000 ASSIEME CONTATTO FASE BIVALENT / 20710,000\n"
+ "6 A.4050/052 NR 2000 ASS. CONT. TERRA PRESA UNIVERS / 12366,000\n"
+ "7 A.4050/053 NR 5000 ASS. CONT. FASE PRESA UNIVERSA / 24815,000\n"
+ "8 BIADESIVO MT 50 BIADESIVO SOTTILE SUPP. SP 0,1 /\n"
+ "9 ETI.100X56G NR 292 ETICHETTE 100X56 GIALLE X CONF /\n"
+ "10 ETI.30X15B NR 38512 ETICHETTE IN ROTOLO 15X30 BIAN /\n"
+ "11 ETI.32X80EL NR 233 ETICH IN ROTOLO 32X80 GIALLE /\n"
+ "12 GR.002 NR 2200 CONTATTO PER CAVALLOTTO / 2257,200\n"
+ "13 GR.003 NR 2200 CAVALLOTTO CENTRALE SINGOLO / 3484,800\n"
+ "14 GR.023 NR 10000 MORS.STRINGIF.PULS.7,8X7,8 ZB / 7570,000\n"
+ "15 GR.024 NR 3500 CORNICE ESTERNA / 13170,500\n"
+ "16 IMBALLO.01 NR 2 CARTONE LxLxH 533X330X285 /\n"
+ "17 IMBALLO.17N NR 25 CARTONE LxLxH INT 383X189X123 /\n"
+ "18 IMBALLO.22N NR 30 CARTONE LxLxH 35X27X18,5 / 10208,100\n"
+ "19 LAMP.NEON NR 1000 LAMP.NEON NE6X13 HB+100K 24/58 / 498,000\n"
+ "20 MEGA.2,5X42 NR 1000 GUAINA PVC DM.INT.2,5x42 TAGL. / 210,000\n"
+ "21 MOL2000/00 NR 2000 MOLLA INT.-PULSANTI ZINCATA BI / 1424,000\n"
+ "22 MOL3000/05 NR 600 MOLLA PULSANTE LUNGA ZINC.BIAN / 1000,800\n"
+ "23 MOL4011/00 NR 2400 MOLLA PULSANTI / 100,800\n"
+ "24 MOL4050/02 NR 4000 MOLLA RITORNO ELICA / 1688,000\n"
+ "25 PER2000/02 NR 5000 TER.MOL.GAMBO CORTO TESTA ALTA / 4890,000\n"
+ "26 PLA2012/01 NR 500 PULSANTE LUMINOSO AVORIO / 1564,000\n"
+ "27 PLA2012/02 NR 2000 INTERNO PULS.LUMINOSO ROSSO / 1260,000\n"
+ "28 PLA2015/00 NR 1500 CORPO BIPOL.LUM. 4 USC. NERO / 12826,500\n"
+ "29 PLA2015/01 NR 1000 TELAIET.INTERRUTTORE NERO / 2247,000\n"
+ "30 PLA2015/02 NR 434 TASTO LUMINOSO TAMPOGRAFATO \"0 / 1363,194\n"
+ "31 PLA2021/00 NR 1500 CORPO PULSANTE 2 USCITE NERO / 11953,500\n"
+ "32 PLA2024/02 NR 50 POMELLO NEW PER ART.2024 / 165,000\n"
+ "Bolla con continuazione\n"
+ "19300011 08/01/2019\n"
+ "COMPARIN SYSTEM S.R.L.\n"
+ "VIA F.TASCA 145\n"
+ "35010 SAN PIETRO IN GU PD\n"
+ "Italia\n"
+ "COMPARIN SYSTEM S.R.L.\n"
+ "VIA F.TASCA 145\n"
+ "35010 SAN PIETRO IN GU PD\n"
+ "Italia\n"
+ "ASSEGNATO\n"
+ "N.Ord. Peso\n"
+ "33 PLA2050.01 NR 2400 MOSTRINA UNIV.3FORI AVORIO LAS / 36969,600\n"
+ "34 PLA3000/05 NR 500 TASTO INTER. TL CON CANNOTTI C / 2095,000\n"
+ "35 PLA3012/01 NR 375 PULSANTE LUMINOSO SERIE TL / 1672,875\n"
+ "36 PLA4012/03 NR 2000 SOTTOTASTO TRASPARENTE / 5028,000\n"
+ "37 PLA4039/04 NR 6000 SOTTOELICA NERO / 6240,000\n"
+ "38 PLA4039/05 NR 5200 ELICA DI SICUREZZA NERO / 4134,000\n"
+ "39 PLA4045/00 NR 4500 CORPO PRESA BIVALENTE FLEXÌ / 36454,500\n"
+ "40 PLA4045/01 NR 2500 MOSTRINA PRESA BIVALENTE FLEXÌ / 13017,500\n"
+ "41 PLA4045/01WH NR 5000 MOSTRINA PRESA BIV. BIANCA / 26870,000\n"
+ "42 PLA4050/00 NR 3000 CORPO PRESA UNIVERSALE 2M / 23250,000\n"
+ "43 PLA4051/00WH NR 120 MOSTRINA TV SAT BIANCO / 810,960\n"
+ "44 PLA4080/00 NR 20000 MOSTRINA FALSO POLO FLEXÌ / 75300,000\n"
+ "45 PLA4080/00WH NR 8600 MOSTRINA FALSO POLO BIANCA / 33720,600\n"
+ "46 PLA4600/00 NR 65000 ADATTATORE SUPPORTO FLEXÌ / 17615,000\n"
+ "47 PLA4604/00 NR 1500 SUPPORTO 4P FLEXÌ / 32133,000\n"
+ "48 PLA4607/00 NR 500 SUPPORTO 7P FLEXÌ / 14846,500\n"
+ "49 PLA5703/00N NR 62 LASTRA TAGLIATA E FORATA 3M NE /\n"
+ "50 PLA5703/00NG NR 80 LASTRA TAGLIATA E FORATA 3M NE /\n"
+ "51 PLA5703/01 NR 160 CORNICE 3P ELITE TRASPARENTE / 2602,400\n"
+ "52 PLA7604/00 NR 300 SUPPORTO 4M FLAT / 6432,000\n"
+ "53 PLA7607/00 NR 200 SUPPORTO 7M FLAT / 5847,800\n"
+ "54 R.75.O NR 200 RESIST. 1/4 W 75 OHMS 1% /\n"
+ "55 S.4050/001 NR 240 MOSTR. UNIV. VERNICIATA ARGENT / 3298,560\n"
+ "56 S.5700.3CR NR 240 ANELLO ELITE 3P CROMATO / 1712,880\n"
+ "57 SACCH.30X42 NR 21 SACCH. PLT CM. 30X40 SPESS. 0, / 21,273\n"
+ "58 SACCH30X22 NR 200 SACCH. PLT CM. 20X30 SPESS. 0, / 1231,400\n"
+ "59 SCA.CLICK NR 100 SCATOLA CLICK 20,53X16X9,5 /\n"
+ "60 SCA.FLAT/3 NR 10 SCATOLA AUTOMONTANTE X PLACCHE / 1350,000\n"
+ "61 SCA.FLEX NR 8 SCATOLA FLEX 299X145X105 /\n"
+ "62 VBX.M3,5X22 NR 8000 V.T/BOMB.COMB.CIL.3,5X22 ZB / 11064,000\n"
+ "Bolla con continuazione\n"
+ "19300011 08/01/2019\n"
+ "COMPARIN SYSTEM S.R.L.\n"
+ "VIA F.TASCA 145\n"
+ "35010 SAN PIETRO IN GU PD\n"
+ "Italia\n"
+ "COMPARIN SYSTEM S.R.L.\n"
+ "VIA F.TASCA 145\n"
+ "35010 SAN PIETRO IN GU PD\n"
+ "Italia\n"
+ "ASSEGNATO\n"
+ "N.Ord. Peso\n"
+ "63 22520036 NR 120 PRESA ULB CONN.MASCHIO 0 DB / 7897,200\n"
+ "**************************************************\n"
+ "NR 02 PALLET 80 X 120 + NR. 01 PALLET 74 X 74\n"
+ "PESO TOTALE KG. 630\n"
+ "**************************************************\n"
+ "5HL 3 BANCALI\n"
+ "Destinatario 3 630,00\n"
+ "USCITA IN C/LAVORO A FORNITORE\n"
+ "08/01/2019 16:11:16\n"
+ "//FINE//";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
if (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html