Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Dopo oltre 4 anni si rinnova la serie Sony Alpha 7 con la quinta generazione, che porta in dote veramente tante novità a partire dai 30fps e dal nuovo sensore partially stacked da 33Mpixel. L'abbiamo provata per un breve periodo, ecco come è andata dopo averla messa alle strette.
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme e Aston Martin Aramco F1 Team si sono (ri)unite dando alla vita un flagship con chip Snapdragon 8 Elite Gen 5 e design esclusivo ispirato alle monoposto di Formula 1. La Dream Edition introduce la nuova colorazione Lime Essence abbinata al tradizionale Aston Martin Racing Green, decorazioni intercambiabili personalizzate e una confezione a tema F1, intorno a uno smartphone dall'ottima dotazione tecnica con batteria da 7000mAh ricaricabile a 120W e isola fotografica intercambiabile
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
Abbiamo partecipato all'OVHcloud Summit 2025, conferenza annuale in cui l'azienda francese presenta le sue ultime novità. Abbiamo parlato di cloud pubblico e privato, d'intelligenza artificiale, di computer quantistici e di sovranità. Che forse, però, dovremmo chiamare solo "sicurezza"
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-10-2013, 10:31   #1
vendettaaaaa
Senior Member
 
L'Avatar di vendettaaaaa
 
Iscritto dal: Jan 2012
Messaggi: 1267
[C++] Come usare le regex per rimpiazzare dei numeri in una stringa

Ciao,
ho appena cominciato a studiacchiare le regex, e dato che in C++11 sono parte della standard library, ho pensato di utilizzarle per questo compito: dato il seguente testo
Codice:
rooms[1]->roomL = rooms[2];
vorrei applicarvi una trasformazione tale che risulti
Codice:
rooms[0]->roomL = rooms[1];
Ora, ho pensato di far così: estraggo tutti gli interi col seguente pattern:
Codice:
regex pattern{ "(\\d+)+" };
visto che gli indici dei vettori possono avere 1 o più cifre. Usando
Codice:
smatch matches; regex_search(myString, matches, pattern);
matches ha size 2 e contiene correttamente gli interi estratti. Fin qui tutto chiaro, ma a quanto ho capito le regex son buone per estrarre info; come faccio a sostituire, agevolmente, a quei numeri la loro forma processata?
Ho visto che c'è regex_replace, in due versioni:
- standard library -> il formatter è sempre string o const char*
- boost -> il formatter è un funtore! Proprio quello che mi serve!! Infatti ho risolto così:
Codice:
line = regex_replace(line, pattern, [](const smatch& m){ return to_string( stoi(m.str()) - 1 ); });
Ora, dato che mentre scrivevo il thread ho risolto usando la versione boost ma non voglio buttare all'aria tutto quello che ho scritto mi e vi chiedo: come mai nella versione standard regex_replace non prende funtori come argomento ma solo stringhe fissate? E' assurdo! Avevo pensato di fare così: estrarre i due interi in matches e conservarli; rimpiazzare gli interi in line con degli asterischi e poi uno ad uno rimpiazzare gli asterischi con i nuovi interi, ma era molto macchinoso e mi sono rifiutato...

E poi, ci sarebbero modi migliori per fare questa cosa?
vendettaaaaa è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator Sony Alpha 7 V, anteprima e novità della ...
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1 realme GT 8 Pro Dream Edition: prestazioni da fl...
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI C...
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro DJI Neo 2 in prova: il drone da 160 grammi guada...
Auto elettriche al 27% in Europa: Tesla ...
Il CEO di Reddit dice che r/popular 'fa ...
Spende 1.200 dollari per una RTX 5080 e ...
Datacenter AI, reti elettriche... ecco p...
Super offerta Dyson: la V8 Absolute a 29...
Continua l'odissea di Horses: il gioco i...
Vuoi rivedere una scena specifica di un ...
Windows 11, attenzione: la lista delle C...
Tutti i robot aspirapolvere rimasti ai p...
Robot da 19.000 Pa al prezzo del Black F...
Gaming ultra-fluido a 200 Hz a 80€: ques...
Prime Video sotto accusa: doppiaggi anim...
Rivoluzione Linux fra i gamer: nuovo rec...
OnePlus 15R: in attesa dell'arrivo in It...
BIOS schede madri AMD: AGESA 1.2.8.0 in ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:05.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v