Ciao ragazzi, nuovo iscritto ma vi seguo da tanto tempo ormai. Volevo chiedere un consiglio a voi esperti:
Vorrei riconoscere gli indirizzi MAC contenuti in una stringa. Il formato di questi è del tipo XX:XX:XX:XX:X:XX, dove XX son due caratteri variabili da 0 a 9 e da A a F. La stringa è il risultato della funzione shell_exec, che permette l' esecuzione di un prompt e ritorna il risultato del prompt in formato di stringa.
Vedrei due soluzioni:
- Tramite una espressione regolare come questa:
codice:
/[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]:[0-9A-F][0-9A-F]/
(scritta sul momento) per poi usarla nella funzione preg_match nel seguente modo:
codice:
preg_match($espressione_regolare, $stringa_input, $stringa_output);
- Una serie di explode concatenati. Per esempio, la stringa intera è una cosa di questo tipo:
codice:
Scanning...
BD Address: XX:XX:XX:XX:XX:XX [mode 1, clkoffset 0xXXXX]
Device name: dispositivo1 [cached]
BD Address: XX:XX:XX:XX:XX:XX [mode 1, clkoffset 0xXXXX]
Device name: dispositivo2 [cached]
Pensavo di fare un explode al [mode e poi quello che ottenevo fare l' explode ai due punti, ma mi restano l' inizio e la fine da "pulire" da quello che resta.
Qualche consiglio?