Jump to content

altyouth

Members
  • Content count

    8
  • Joined

  • Last visited

Community Reputation

0 Comum

About altyouth

  1. altyouth

    Expressões Regulares

    Tenho um código que le um arquivo csv e tenho expressões regulares pra encontrar determinados trechos. Pois bem, o código capta a maioria, mas tem alguns que nao são capturados msm seguindo a mesma regra das outras. O codigo esta em Scala formato do arquivo csv: Relatório de Controle de Ponto (por período);;;;;;;;;;;;;;;;;;;;;;;;;;; ;Empregador:;;;;CASTAWARE SOLUTIONS INC.;;;;;;;;;;;;CNPJ:;;;;;;1234567890;;;; ;Endereço:;;;;CastaStreet, 1234 - Hawai;;;;;;;;;;;;Unidade:;;;;;;;;;; ;Período:;;;;;01/09/2019;;;a;;14/09/2019;;;;;;Emitido em:;;;;;;14/setembro/2019;;;; ;Matrícula:;;;;1;;;;;;;;;;;;Admissão:;;;;;;01/junho/2016;;;; ;Escala atual:;;;;08:00 Livres Almoço Flex Seg---- / Sáb-Dom Repouso;;;;;;;;;;;;Demissão:;;;;;;;;;; ;Cargo:;;;;;;;;;;;;Função:;;;;;;;;;;;;;; ;Empregado:;;;;Roberto Gomes Soares;;;;;;;;;;;;;;;;;;;;;; Dia;;;"Jornada realizada ENTR. SAIDA ENTR. SAIDA";;;;;;; Turno;;;Jornada Diurna/Not.;;"Extra Diurno/Not.";;;;;;Devido;Abono;;Desab;;; Justificativa 01/09 - dom;;;;;;;;;;(R) ;;;;;;;;;;;;;;;;; 02/09 - seg;;;10:25 12:34 13:35 18:28;;;;;;;8:00h Livre (intervalo 12:00-13:00 [flex]);;;07:02;00:00;00:00;;;00:00;;;00:58;;;;;; 03/09 - ter;;;09:18 12:04 13:23 19:33;;;;;;;8:00h Livre (intervalo 12:00-13:00 [flex]);;;08:00;00:00;00:56;;;00:00;;;00:00;;;;;; 04/09 - qua;;;09:37 11:16 11:56 18:51;;;;;;;8:00h Livre (intervalo 12:00-13:00 [flex]);;;08:34;00:00;00:00;;;00:00;;;00:00;;;;;; 05/09 - qui;;;09:47 12:18 13:15 18:16;;;;;;;8:00h Livre (intervalo 12:00-13:00 [flex]);;;07:32;00:00;00:00;;;00:00;;;00:00;;;;;; 06/09 - ---;;;08:54 11:13 11:58 16:12;;;;;;;8:00h Livre (intervalo 12:00-13:00 [flex]);;;06:33;00:00;00:00;;;00:00;;;01:27;;;;;; 07/09 - sáb;;;;;;;;;;(R) ;;;;;;;;;;;;;;;;; 08/09 - dom;;;;;;;;;;(R) ;;;;;;;;;;;;;;;;; 09/09 - seg;;;09:22 11:40 12:44 19:07;;;;;;;8:00h Livre (intervalo 12:00-13:00 [flex]);;;08:00;00:00;00:41;;;00:00;;;00:00;;;;;; 10/09 - ter;;;;;;;;;;(F) 8:00h Livre (intervalo 12:00-13:00 [flex]);;;00:00;00:00;00:00;;;00:00;;;08:00;;;;;; 11/09 - qua;;;;;;;;;;(F) 8:00h Livre (intervalo 12:00-13:00 [flex]);;;00:00;00:00;00:00;;;00:00;;;08:00;;;;;; 12/09 - qui;;;;;;;;;;(F) 8:00h Livre (intervalo 12:00-13:00 [flex]);;;00:00;00:00;00:00;;;00:00;;;08:00;;;;;; 13/09 - ---;;;10:58 11:35 12:32 18:45;;;;;;;8:00h Livre (intervalo 12:00-13:00 [flex]);;;06:50;00:00;00:00;;;00:00;;;01:10;;;;;; 14/09 - sáb;;;;;;;;;;(R) ;;;;;;;;;;;;;;;;; ;Jornada + Abono;;;;;;;Jornada total;;;;52:31 (52,52);;;;00:00 (0,0);;;;;;;;;Jornada noturna;; ;52:31 (52,52);;;;;;;Extra total;;;;01:37 (1,62);;;;;;;;;;;;;;; ;Trabalhado (Jor.+Ext.);;;;;;;Atraso efetivo;;;;00:00 (0,0);;;;00:00 (0,0);;;;;;;;;Antecipação efetiva;; ;54:07 (54,13);;;;;;;Devido;;;;27:34 (27,58);;;;00:00 (0,0);;;;;;;;;Abonado;; ;Faltas;(horas);;;;;;Devido (s/faltas);;;;03:34 (3,58);;;;00:00 (0,0);;;;;;;;;Abonado (s/faltas);; ;3;24:00 (24,0);;;;;;Extra efetivo;;;;01:37 (1,62);;;;00:00 (0,0);;;;;;;;;Desabonado;; ;Dias;Feriados trab.;;;;;;Devido efetivo;;;;27:34 (27,58);;;;03:35:00;;;;;;;;;Devido efet(s/faltas;; ;14;0;;;;;;Dias escalados;;;;10;;;;-25:58 (-25,97);;;;;;;;;Saldo de Horas;; ;;;;;;;;BdH Acumulado;;;;-328:10 (-328,17);;;;80:00 (80,0);;;;;;;;;Horas programadas;; Controle de Extra;;;;;;;;;;;;;;;;;;;;;;;;;;; Jornada;;;;;;;Jornada de trabalho;;;;;;;;;;;;;;;;;;;52:30 (52,52); Assinatura Gestor/Supervisor;;;;;;;;;;;;;;;;;;;Assinatura;;;;;;;; No codigo eu pego as infos com nome do empregador, e os dias trabalhados alem do total de horas. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.regex.Matcher; import java.util.regex.Pattern; import scala.util.matching.Regex import scala.io.Source import com.sun.xml.internal.ws.util.StringUtils object teste { def main(args: Array[String]): Unit = { val patternEmp = "\\;Empregado:\\;{4}([A-Za-z]*) ([A-Za-z]*) ([A-Za-z]*)\\;*".r; val patternWkDay = "([0-9]{2}/[0-9]{2}) - ([a-z]{3})\\;{3}([0-9: ]*).*".r; val patternWkJourney = "\\;Jornada \\+ Abono\\;{7}Jornada total\\;{4}([0-9]{2}:[0-9]{2}).*".r val patternFlagTotJourney = "\\;(Trabalhado \\(Jor.+Ext.\\))\\;{7}Atraso efetivo\\;{4}[0-9: (,)]*\\;{4}[0-9: (,)]*\\;{9}Antecipação efetiva\\;\\;".r val patternTotJourney = "\\;([0-9: (,)]*)\\;{7}Devido\\;{4}[0-9: (,)]*\\;{4}[0-9: (,)]*.*".r val regexs = Seq[scala.util.matching.Regex](patternEmp,patternWkDay,patternWkJourney,patternFlagTotJourney,patternTotJourney) val fileName = "RelExtraPorPeriodo.csv"; for(line <- Source.fromFile(fileName).getLines){ traduzLinha(line, regexs); } } def traduzLinha(line : String, regexs:Seq[scala.util.matching.Regex]): Unit = { regexs.foreach{ m => m.findAllIn(line).matchData foreach { n => if(m.equals(regexs(0))){ println("Empregado: " + n.group(1) + " " + n.group(2)+ " " + n.group(3)) } if(m.equals(regexs(1))){ println(n.group(1)+ "-" + n.group(2) + ": " + n.group(3)) } if(m.equals(regexs(2))){ println("Jornada total: "+ n.group(1) + "\n") } if(m.equals(regexs(3))){ println(n.group(1)+ ":") } if(m.equals(regexs(4))){ println(n.group(1)+"\n") } } } } } Saida do codigo: Empregado: Roberto Gomes Soares 01/09-dom: 02/09-seg: 10:25 12:34 13:35 18:28 03/09-ter: 09:18 12:04 13:23 19:33 04/09-qua: 09:37 11:16 11:56 18:51 05/09-qui: 09:47 12:18 13:15 18:16 06/09----: 08:54 11:13 11:58 16:12 08/09-dom: 09/09-seg: 09:22 11:40 12:44 19:07 10/09-ter: 11/09-qua: 12/09-qui: 13/09----: 10:58 11:35 12:32 18:45 Jornada total: 52:31 Trabalhado (Jor.+Ext.): 54:07 (54,13) 01/09-dom: 02/09-seg: 03/09-ter: 09:11 14:53 04/09-qua: 11:48 17:54 18:25 20:03 05/09-qui: 10:54 16:34 16:57 18:36 06/09----: 19:12 08/09-dom: 09/09-seg: 10/09-ter: 09:25 17:42 17:53 19:02 11/09-qua: 11:25 11:55 12:54 18:28 18:57 19:26 12/09-qui: 13:06 15:19 15:42 13/09----: 09:26 11:36 12:33 19:47 Jornada total: 35:52 Trabalhado (Jor.+Ext.): 45:39 (45,65) Empregado: Gabriel Nunes Santos 01/09-dom: 02/09-seg: 10:00 19:04 03/09-ter: 10:18 19:23 04/09-qua: 18:56 05/09-qui: 10:03 12:03 06/09----: 09:44 08/09-dom: 09/09-seg: 09:32 18:48 10/09-ter: 11:16 11/09-qua: 09:14 12/09-qui: 18:27 13/09----: Jornada total: 26:00 Trabalhado (Jor.+Ext.): 29:25 (29,42) Empregado: Paulo Bandeira J 01/09-dom: 02/09-seg: 03/09-ter: 04/09-qua: 05/09-qui: 06/09----: 08/09-dom: 09/09-seg: 10/09-ter: 11/09-qua: 12/09-qui: 13/09----: Jornada total: 00:00 Trabalhado (Jor.+Ext.): 00:00 (0,0) 01/09-dom: 02/09-seg: 11:40 17:19 17:28 18:45 03/09-ter: 11:24 19:02 04/09-qua: 11:20 13:05 13:53 19:03 05/09-qui: 12:34 14:22 14:53 20:46 06/09----: 11:13 12:51 13:59 16:59 17:09 18:41 08/09-dom: 09/09-seg: 11:16 18:48 10/09-ter: 11/09-qua: 10:32 13:42 14:34 18:16 12/09-qui: 10:52 13:58 15:24 18:44 13/09----: 11:37 20:18 Jornada total: 64:10 Trabalhado (Jor.+Ext.): 64:51 (64,85) Empregado: Carlos Alex de 01/09-dom: 02/09-seg: 11:01 12:34 13:35 19:50 03/09-ter: 12:01 12:06 15:45 19:37 04/09-qua: 11:32 13:10 13:46 05/09-qui: 10:55 12:16 13:15 18:27 06/09----: 11:43 19:34 08/09-dom: 09/09-seg: 10:43 11:45 12:44 19:07 10/09-ter: 13:06 14:09 20:36 11/09-qua: 12:57 18:28 18:57 21:04 12/09-qui: 10:02 13:58 15:24 18:27 13/09----: 09:49 11:38 12:32 19:12 Jornada total: 56:40 Trabalhado (Jor.+Ext.): 56:40 (56,67) 01/09-dom: 02/09-seg: 10:14 18:13 03/09-ter: 13:13 17:05 04/09-qua: 11:16 16:01 16:13 18:09 05/09-qui: 13:32 17:29 06/09----: 10:44 12:27 12:42 16:58 08/09-dom: 09/09-seg: 09:45 12:28 12:34 17:52 10/09-ter: 13:06 19:34 11/09-qua: 12:11 18:40 12/09-qui: 13:03 14:32 14:37 18:23 13/09----: Jornada total: 50:00 Trabalhado (Jor.+Ext.): 54:40 (54,68) Empregado: Carol Maria Rondelli 01/09-dom: 02/09-seg: 10:03 13:02 13:14 19:15 03/09-ter: 15:45 19:15 04/09-qua: 10:51 18:04 05/09-qui: 12:57 16:58 17:04 19:15 06/09----: 12:47 18:54 08/09-dom: 09/09-seg: 10:54 19:31 10/09-ter: 16:08 19:01 11/09-qua: 09:58 13:39 14:51 19:20 12/09-qui: 12:40 19:16 13/09----: 11:53 18:15 Jornada total: 55:04 Trabalhado (Jor.+Ext.): 64:40 (64,67) Empregado: Diego Rodrigues Abrantes 01/09-dom: 02/09-seg: 11:15 17:26 03/09-ter: 08:55 16:59 04/09-qua: 12:39 17:18 05/09-qui: 10:59 17:20 06/09----: 14:11 19:43 08/09-dom: 09/09-seg: 11:45 17:37 10/09-ter: 12:56 19:20 11/09-qua: 11:00 14:49 12/09-qui: 11:22 18:13 13/09----: 10:46 18:50 Jornada total: 00:00 Trabalhado (Jor.+Ext.): 61:46 (61,78) Percebe-se que tem algumas horas sem nome do funcionario. Alguem sabe oq pode estar ocasionando essa anomalia
  2. altyouth

    Import de Arquivos Js - Webpack

    Estou testando a configuracao do webpack em um projeto teste, mas estou tendo problemas com o import de outros arquivos js. Eu importo uma funcao, de um outro arquivo JS, pro meu arquivo principal, mas quando abro no navegador o html, ele acusa erro de sintaxe no arquivo JS export function multiplica(a,b){ return a*b; } import { multiplica } from './functions'; multiplica(1,3); o referido erro eh na chave de abertura logo apos o import. Mensagem do erro: Uncaught SyntaxError: Unexpected token {
  3. altyouth

    Problemas com Jquery

    meu arquivo js eh esse: $(document).ready(function(){ alert("Estou usando Jquery"); });
  4. altyouth

    Problemas com Jquery

    Cara, eu tentei esse procedimento. Eu vi exatamente isso num post do StackOverflow, mas ai nesse caso quando instalo o jsdom, o erro no console muda, passa a dizer que o require nao foi referenciado. Quando você diz que preciso de dois pacotes do node instalados, você ta se referindo ao JQuery e ao JSdom instalados dentro do diretorio do projeto, certo?
  5. altyouth

    Problemas com Jquery

    Entao, eu instalei o jquery via npm, e criei um codigo simples utilizando o escopo do Jquery so pra ver se tava okay, mas acontece o erro que citei acima. A biblioteca so funciona se eu apontar a url fornecida, no proprio site do JQuery, no HTML. Via npm nao funciona, gostaria de entender onde eu to errando. O codigo eh esse: $(document).ready(function(){ alert("testando jquery"); }) Funciona via url, mas nao com o gerenciador de pacote, a funcao acima.
  6. altyouth

    Problemas com Jquery

    Sou iniciante, e estou tentando utilizar JQuery em um projeto, estou fazendo sua instalação via npm, e incluindo o escopo global no arquivo js. Mas quando abro a pagina e verifico o console, o mesmo aponta erro no $ do escopo global dizendo que nao foi referenciado. Ja pesquisei sobre pra ver se conseguia resolver, mas o problema persiste.
  7. Cara, erro bizarro meu. Nao estava chamando a funcao no arquivo js rsrs, percebi agora, mas valeu de qualquer forma.
  8. Eu estou no inicio dos estudos de JS, entao to criando uma pagina de teste onde basicamente eu criei uma div e dividi essa div principal em outras quatro, e tenho uma botao na pagina que ao clicar sera executada uma funcao que cria um array e executa prompt() 4 vezes pra capturar 4 valores a serem inseridos nessas 4 divs dentro da div principal. O problema eh que quando eu clico no botao que deveria executar a funcao e abrir o prompt na pagina, a acao desejada nao esta acontencendo. Eu clico no botao e nao acontece nada. Obs.: na vdd o botao eh uma div que eu criei e adicionei a propriedade 'cursor:pointer'.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.