Visualizzazione dei risultati da 1 a 5 su 5

Discussione: [java]regex

  1. #1

    [java]regex

    salve..
    ho creato un file di log in cui vengono stampati i tempi di esecuzione di vari metodi...

    avrei bisogno di fare una regex su qusto file che mi restituisca i tempi di esecuzione superiori a 5 secondi...
    potreste aiutarmi?...
    codice:
    - GET PERIODO CHIUSURA DEL MESE
    82079819 [http-8080-Processor10] INFO  mioPakage    - GET PERIODO CHIUSURA DEL MESE
    82079942 [http-8080-Processor8] INFO  mioPakage    - TEMPO DI ESECUZIONE: 123 ms
    82079942 [http-8080-Processor8] INFO  mioPakage    - - FINE - GET PERIODO CHIUSURA DEL MESE
    82079952 [http-8080-Processor10] INFO  mioPakage    - TEMPO DI ESECUZIONE: 133 ms
    82079952 [http-8080-Processor10] INFO  mioPakage    - - FINE - GET PERIODO CHIUSURA DEL MESE
    82080400 [http-8080-Processor16] INFO  mioPakage    - Trovati : 1546 comuni
    82080400 [http-8080-Processor16] INFO  mioPakage    - TEMPO DI ESECUZIONE: 4073 ms
    82080400 [http-8080-Processor16] INFO  mioPakage    - - FINE - GET COMUNI PER REGIONE
    82080716 [http-8080-Processor43] INFO  mioPakage    - TEMPO DI ESECUZIONE: 897 ms
    82080716 [http-8080-Processor43] INFO  mioPakage    - - FINE - CARICA CAMERE STRUTTURA
    82080731 [http-8080-Processor43] INFO  mioPakage    - Trovati : 10 camere
    82080731 [http-8080-Processor43] INFO  mioPakage    - TEMPO DI ESECUZIONE: 6500 ms
    82080731 [http-8080-Processor43] INFO  mioPakage    - - FINE - GET CAMERE PER STRUTTURA
    82090361 [http-8080-Processor9] INFO  mioPakage    - CERCA
    82090362 [http-8080-Processor9] INFO  mioPakage    - cerca
    82090402 [http-8080-Processor9] INFO  mioPakage    - TEMPO DI ESECUZIONE: 40 ms
    82090402 [http-8080-Processor9] INFO  mioPakage    - - FINE - cerca
    82090639 [http-8080-Processor9] INFO  mioPakage    - TEMPO DI ESECUZIONE: 5320 ms
    82090639 [http-8080-Processor9] INFO  mioPakage  - - FINE - CERCA
    questa è un esempio di stampa del file...
    come posso prendere tutti i metodi che hanno un tempo di esecuzione superiore a 5000 ms?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [java]regex

    Originariamente inviato da nikynik1980
    come posso prendere tutti i metodi che hanno un tempo di esecuzione superiore a 5000 ms?
    Devi usare direttamente Pattern/Matcher. Come pattern usa "(\\d+) ms" e al matcher passi di volta in volta la stringa della riga. Poi usi find() una volta sola, se ritorna true, ha trovato il pattern e con group(1) hai la stringa con il solo numero, che converti in valore int con parseInt() di Integer. Poi lo controlli come vuoi.

    Spero di aver spiegato chiaramente.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    si and..
    solo che la regex che inserisco dovrebbe essere del tipo
    ...(.*?)5000 mx
    o una cosa del genere...

    il mio problema è che non so creare la regex adatta...
    per il patter e matcher ho già impostato la classe per usarlo...

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da nikynik1980
    solo che la regex che inserisco dovrebbe essere del tipo
    ...(.*?)5000 mx
    Non devi necessariamente verificare che l'intera stringa corrisponda alla regex!! Basta che tu trovi una sequenza nella stringa che corrisponde alla regex.

    Originariamente inviato da nikynik1980
    il mio problema è che non so creare la regex adatta...
    Ma l'ho riportata io sopra. Quella che ho indicato va bene se sei sicuro che quel pattern lo trovi solo 1 volta nella riga (e vedendo gli esempi mi sembra proprio così). Se proprio (ma al limite) vuoi essere sicuro che trovi solo quel pattern al fondo della stringa, allora usa "(\\d+) ms$".
    Ripeto: segui quanto ho detto sopra.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    ok grazie and... non avevo capito bene... grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.