fork download
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.io.*;
  4. import java.util.regex.Matcher;
  5. import java.util.regex.Pattern;
  6.  
  7. class Ideone{
  8. public static void main (String[] args) throws java.lang.Exception{
  9. String input = "201700000000111 01/02/2017 11.111.111/0001-74 ADAMA BRASIL S/A ATIVA 0,00 160,00 160,00 0,00 0,00 0,00 0,00 0,00"
  10. + System.lineSeparator()
  11. + "201700000000122 01/02/2017 22.222.222/0002-75 AGRITEX COMERCIAL AGRÍCOLA LTDA (QUERÊNCIA) ATIVA 2,79 170,00 170,00 0,00 0,00 0,00 4,74 0,00"
  12. + System.lineSeparator()
  13. + "201700000000133 07/02/2017 33.333.333/0001-76 CREMONESE WANDSCHEER & CIA LTDA - ME ATIVA 0,00 50,00 50,00 0,00 0,00 0,00 0,00 0,00"
  14. + System.lineSeparator()
  15. + "201700000000204 23/02/2017 23.972.199/0001-15 G3 SEMENTES LTDA ATIVA 0,00 230,00 230,00 0,00 0,00 0,00 0,00 0,00";
  16.  
  17. String regex = "\\b(\\d{2}\\.\\d{3}\\.\\d{3}\\/\\d{4}\\-\\d{2})\\b([A-zÀ-ú-1-9\\s\\\\\\/&\\-\\(|)]{5,}.*[a-zA-Z])\\b";
  18. Pattern pattern = Pattern.compile(regex);
  19. Matcher matcher = pattern.matcher(input);
  20.  
  21. while (matcher.find()) {
  22. String cnpj = matcher.group(1).trim();
  23. String nome = matcher.group(2).trim();
  24. System.out.println(nome);
  25. }
  26. }
  27. }
Success #stdin #stdout 0.06s 4386816KB
stdin
Standard input is empty
stdout
ADAMA BRASIL S/A ATIVA
AGRITEX COMERCIAL AGRÍCOLA LTDA (QUERÊNCIA) ATIVA
CREMONESE WANDSCHEER & CIA LTDA - ME ATIVA
G3 SEMENTES LTDA ATIVA