import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(FACTURA.*?(?!ELECTR))";
final String string = "CLINICA LAS UBNDES S.A. R.U.T.: 93.930.000-7\n"
+ "HOSPÍ ES IONAMIENTO\n"
+ "CASA TAL: e e - LAS CONDES - SANTIAGO FACTURA NO AFECTA O\n"
+ "SP” CLÍNICA SUCURSALES: LO FONTECILLA 4174 - LAS CONDES EXENTA ELECTRONICA\n"
+ "CHICUREO S/N - COLINA N* 211918\n"
+ "E LAS CONDES EMILLE ALLAIS £91 - LO BARNECHEA\n"
+ "CAMINO A VALLE NEVADO 41333 - LO BARNECHEA\n"
+ "LOS PRESIDENTES $8950 - PEÑALOLEN\n"
+ "S.l.1. - SANTIAGO ORIENTE\n"
+ "www.clc.cl\n"
+ "Fecha Emisión : 08-02-2023 RUT : 10.143.057-K\n"
+ "Señor(es) : NALLY FERNANDEZ MARIA SOLEDAD\n"
+ "Dirección : MARTIN DE ZAMORA 6306 Vencimiento\n"
+ "Ciudad : SANTIAGO Comuna : LAS CONDES\n"
+ "Giro : ACTIVIDADES NO ESPECIFICADAS Forma de Pago _ : CONTADO\n"
+ "1.698.196\n"
+ "DESCRIPCIÓN\n"
+ "PETCT\n"
+ "1.698.196\n"
+ "102001\n"
+ "cuy SÉ Y\n"
+ "3 |\n"
+ "Ss $\n"
+ "Y OCHO MIL CIE\n"
+ "SON: UN MILLÓN SEISCIENTOS NOVENTA AEB NENENTA\n"
+ "SEIS PESOS\n"
+ "MONTO DSCTO [5 o\n"
+ "MONTO EXENTO |$ 1.698.196\n"
+ "1.698.196\n"
+ "01: j d j sio\n"
+ "y i We\n"
+ "Timbre Electronico Sil fique Documento: ww\n"
+ "Res. 138 de 29-11-2011 Veri\n";
final Pattern pattern = Pattern.compile(regex, Pattern.DOTALL | Pattern.CASE_INSENSITIVE | Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (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