regex experts
#21
Posted 04 April 2012 - 16:39
devi elaborare la stringa
(BRITISH AIRWAYS THREE ZERO TWO NINER)
?
O le linee aeree ti arrivano sempre senza spazi?
#22
Posted 04 April 2012 - 16:43
Da come scrivi però sembra che tu odi la bash e questo non lo perdono
Si ma ora qualcuno sa come far eseguire 'sta regex a Qt ?
noi abbiamo usatoe regex su qt, ora sono su aifon ma se dici appena arrivo a casa ti mostro il codice
FIRMA FOTTUTAMENTE EDITATA. IL FOTTUTO STAFF.
Mai più giorni felici
#23
Posted 04 April 2012 - 20:11
Troppo facile altrimenti, lo faccio in 3 righe con Qt.
È un po' complesso da spiegare ma sto lavorando su un programma che deve creare delle grammars per l'ASR (auto speech recog).
Ogni grammar può avere dei templates coi quali crea altre grammars e questi templates (secondo me, non mi è stato chiesto) devono essere dinamici. Quindi, per poter rendere il tutto dinamico, devo mettere la regola di creazione della stringa in questione (che è un template) sotto forma di regex visto che la regola viene salvata in una tabella (dinamica, ovviamente ) nel DB.
Io non vedo alternative al regex visto che devo passare una regola sottoforma di stringa ad un programma C++.
Se qualcuno ha un'alternativa, ben venga.
@Fradetti: good point tnx, domani chiedo.
@toyo: grazie ma ho già chiesto a qt: http://www.qtcentre....7544#post217544
Comunque se sai qualcosa bene, tutto fa brodo.
#24
Posted 04 April 2012 - 20:14
Con tutte le cose super-segretissime dell'esercito, areonautica e sarcazzo che segui, ormai sarai sicuramente a conoscenza di nmila informazioni riservate sui sistemi...
#25
Posted 04 April 2012 - 20:18
FIRMA FOTTUTAMENTE EDITATA. IL FOTTUTO STAFF.
Mai più giorni felici
#26
Posted 04 April 2012 - 20:18
Di cose super segrete non ne so manco una.
#27
Posted 04 April 2012 - 20:20
ehi trallacoso, mi sono appena accorto che non cosiamo stringhe usando la regex, semplicemente validiamo (o meno) una stringa in base ad una QRegExp settata, usando contains (che a, mentre mia madre succhia cazzi, occhio penso sia di QString)
Ah, quindi regexp.ifMatches() o qualcosa del genere.
Beh, se hai qualche esempio posta, dai.
Altrimenti, se non ci riesco, devo andare su boost e la cosa non mi sconfinfera molto.
#28
Posted 04 April 2012 - 20:25
FIRMA FOTTUTAMENTE EDITATA. IL FOTTUTO STAFF.
Mai più giorni felici
#29
Posted 04 April 2012 - 20:26
#30
Posted 04 April 2012 - 23:44
The thing I hate the most is to trample on other people’s good will.
#31
Posted 05 April 2012 - 00:07
string input = "DLH3029 (LUFTHANSA THREE ZERO TWO NINER)" + Environment.NewLine + "Uellalla uellssl (BRITISH AIRWAYS THREE ZERO TWO NINER)"; var output = Regex.Replace(input, @".*((w+(sw+)*)s(w+)s(w+)s(w+)s(w+))", "'$1' '$3' '$4' '$5' '$6'"); Console.WriteLine("Input:"); Console.WriteLine(input); Console.WriteLine(); Console.WriteLine("Output:"); Console.WriteLine(output); Console.ReadKey();
Input:
DLH3029 (LUFTHANSA THREE ZERO TWO NINER)
Uellalla uellssl (BRITISH AIRWAYS THREE ZERO TWO NINER)
Output:
'LUFTHANSA' 'THREE' 'ZERO' 'TWO' 'NINER'
'BRITISH AIRWAYS' 'THREE' 'ZERO' 'TWO' 'NINER'
The above post is my PERSONAL OPINION and DOES NOT REPRESENT the official position of any company or entity, and does not derive either from official or internal data of any company I am dealing with.
#32
Posted 05 April 2012 - 07:36
"DLH3029 (LUFTHANSA THREE ZERO TWO NINER)"
in:
'LUFTHANSA THREE ZERO TWO NINER'
Qt mi ha risposto:
s/[^(]*(\([^)]*\)).*/'\1'/ are two "commands". One for searching and one for replacing. For Qt you have to split them.
'ndo la splitto ?
Dove inizia il "replace" ?
#33
Posted 05 April 2012 - 07:38
"KEY (VAL1 VAL2 VAL3 ... VALn)"
#34
Posted 05 April 2012 - 08:20
The above post is my PERSONAL OPINION and DOES NOT REPRESENT the official position of any company or entity, and does not derive either from official or internal data of any company I am dealing with.
#35
Posted 05 April 2012 - 08:34
edit: va beh, comprendere diciamo validare
Edited by trallallero, 05 April 2012 - 08:35.
#36
Posted 05 April 2012 - 08:35
#37
Posted 05 April 2012 - 09:01
Anziché regex che mi sta facendo venire una verticosi testicolare, faccio una funzione sql che crea una stringa per ogni template passato.
#38
Posted 05 April 2012 - 09:08
Io sarei andato di KISS e YAGNI e poi in caso fosse servita qualche modifica in futuro si vedeva..
#39
Posted 05 April 2012 - 09:25
L'ho fatta invece tanto dinamica da chiamarla DGC (Dynamic Gui Creator) introducendo per primo nel mio gruppo i plugins.
Adesso quasi tutte le GUIs che usiamo vengono fatte col mio DGC
E comunque è KISS perché passo un id ed una stringa ad una funzione psql che mi restituisce un'altra stringa.
Se in futuro vogliamo aggiungere (e succederà) altri templates, basterà aggiornare la funzione psql senza dover ricompilare.
#40
Posted 05 April 2012 - 09:54