Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi
Con la prima rete 5G Standalone attiva in Italia, WINDTRE compie un passo decisivo verso un modello di connettività intelligente che abilita scenari avanzati per imprese e pubbliche amministrazioni, trasformando la rete da infrastruttura a piattaforma per servizi a valore aggiunto
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh
OPPO Find X9 Pro punta a diventare uno dei riferimenti assoluti nel segmento dei camera phone di fascia alta. Con un teleobiettivo Hasselblad da 200 MP, una batteria al silicio-carbonio da 7500 mAh e un display da 6,78 pollici con cornici ultra ridotte, il nuovo flagship non teme confronti con la concorrenza, e non solo nel comparto fotografico mobile. La dotazione tecnica include il processore MediaTek Dimensity 9500, certificazione IP69 e un sistema di ricarica rapida a 80W
DJI Romo, il robot aspirapolvere tutto trasparente
DJI Romo, il robot aspirapolvere tutto trasparente
Anche DJI entra nel panorama delle aziende che propongono una soluzione per la pulizia di casa, facendo leva sulla propria esperienza legata alla mappatura degli ambienti e all'evitamento di ostacoli maturata nel mondo dei droni. Romo è un robot preciso ed efficace, dal design decisamente originale e unico ma che richiede per questo un costo d'acquisto molto elevato
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-02-2007, 15:44   #1
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
[PHP]Espressione regolare

Ciao ragazzi.

Ho bisogno di un'espressione regolare che data ad esempio la stringa 123blabla

mi restituisca solo blabla, cioè elimini le prime cifre finkè sono numeri. Ho provato in questo modo ma mi fa la cosa inversa, cioè mi restituisce solo i numeri.

Codice PHP:
$stringa "123blabla";
preg_match("/^[0-9]*/",$stringa,$match);
echo 
$match[0];  //restituisce 123 
grazie per l'aiuto
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 24-02-2007, 20:23   #2
dinkydinkydinky
Junior Member
 
Iscritto dal: Aug 2006
Messaggi: 2
Ciao, il primo campo della funzione "preg_match" consiste nel pattern. Nel tuo caso con "/^[0-9]*/", la funzione ti ritornerà in $match[0] solo i numeri contenuti nella stringa passata come input. A questo punto basta che elimini i numeri trovati all'inizio della stringa, ad esempio utilizzando la funzione "substr".
Ecco il codice:

Codice:
<?php
$stringa = "123blabla";
preg_match("/^[0-9]*/", $stringa, $match);
$stringa = substr($stringa, strlen($match[0]));
echo $stringa;
?>
Spero ti sia di aiuto , Ciao!
dinkydinkydinky è offline   Rispondi citando il messaggio o parte di esso
Old 24-02-2007, 20:32   #3
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da SCYHO Guarda i messaggi
Ho bisogno di un'espressione regolare che data ad esempio la stringa 123blabla

mi restituisca solo blabla
Fai così:
Codice:
preg_match("/^[0-9]*(\\w+)/",$stringa,$match);
Se fai un var_dump di $match ottieni:
Codice:
array(2) {
  [0]=>
  string(9) "123blabla"
  [1]=>
  string(6) "blabla"
}
Sicuramente hai già capito cosa succede: in $match[0] hai l'intera parte matchata, mentre in $match[1] solo la parte catturata dalle parentesi.

EDIT: Se invece di usare \w (che prende un "word" character) vuoi prendere qualunque cosa, puoi mettere (.+)
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)

Ultima modifica di andbin : 24-02-2007 alle 21:18.
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2007, 17:28   #4
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
Quote:
Originariamente inviato da andbin Guarda i messaggi
Fai così:
Codice:
preg_match("/^[0-9]*(\\w+)/",$stringa,$match);
Se fai un var_dump di $match ottieni:
Codice:
array(2) {
  [0]=>
  string(9) "123blabla"
  [1]=>
  string(6) "blabla"
}
Sicuramente hai già capito cosa succede: in $match[0] hai l'intera parte matchata, mentre in $match[1] solo la parte catturata dalle parentesi.

EDIT: Se invece di usare \w (che prende un "word" character) vuoi prendere qualunque cosa, puoi mettere (.+)


perchè non mi trovo?

Codice PHP:
$stringa2 $_POST[DepEquip];
preg_match("/^[0-9]*(\\w+)/",$stringa2,$mazz);
echo
"$mazz[0]"
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 25-02-2007, 17:53   #5
SCYHO
Member
 
L'Avatar di SCYHO
 
Iscritto dal: Dec 2004
Messaggi: 88
scusa la stupiddaggine, errore mio. mi trovo perfettamente.

ultima cosa, se la stringa è un'intera riga? cioè es: "123blabla oppure bloblo"
l'espressione regolare dovrebbe fare lo stesso restituire "blabla oppure bloblo"
ma per ora mi restituisce solo blabla

grazie ancora sciao
__________________
"Voi che li avete girati nei giradischi e gridati voi che li avete aspettati ascoltati bruciati e poi scordati..chi erano mai questi Beatles
MA CHI ERANO MAI QUESTI BEATLES"
SCYHO è offline   Rispondi citando il messaggio o parte di esso
Old 26-02-2007, 09:22   #6
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da SCYHO Guarda i messaggi
ultima cosa, se la stringa è un'intera riga? cioè es: "123blabla oppure bloblo"
l'espressione regolare dovrebbe fare lo stesso restituire "blabla oppure bloblo"
ma per ora mi restituisce solo blabla
L'ho spiegato sopra: \w indica un "word character", quindi è normale che interrompa il match appena trova uno spazio. Usa (.+) invece di (\\w+)
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2007, 15:25   #7
Stiwy.NET
Senior Member
 
Iscritto dal: Dec 2005
Messaggi: 611
Visto che ci siamo sapete dirmi un ottimo sito dove trovare le istruzioni per le regular expression? E' anni che ne cerco una decente,ma non ne trovo mai.!
Stiwy.NET è offline   Rispondi citando il messaggio o parte di esso
Old 27-02-2007, 15:44   #8
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da Stiwy.NET Guarda i messaggi
Visto che ci siamo sapete dirmi un ottimo sito dove trovare le istruzioni per le regular expression? E' anni che ne cerco una decente,ma non ne trovo mai.!
Innanzitutto bisogna precisare che i costrutti usati per le espressioni regolari non sono uguali e comuni a tutti i linguaggi di programmazione che ne fanno uso.
Ci sono certamente delle basi comuni (es. le classi di caratteri o i quantificatori ? + *) ma molto spesso ogni linguaggio di programmazione ha il suo "set" di costrutti che magari contiene dei costrutti particolari o differisce da altri linguaggi per delle sottigliezze.

Comunque si può partire da qui:
http://en.wikipedia.org/wiki/Regular_expression
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Wind Tre 'accende' il 5G Standalone in Italia: si apre una nuova era basata sui servizi Wind Tre 'accende' il 5G Standalone in Italia: s...
OPPO Find X9 Pro: il camera phone con teleobiettivo da 200MP e batteria da 7500 mAh OPPO Find X9 Pro: il camera phone con teleobiett...
DJI Romo, il robot aspirapolvere tutto trasparente DJI Romo, il robot aspirapolvere tutto trasparen...
DJI Osmo Nano: la piccola fotocamera alla prova sul campo DJI Osmo Nano: la piccola fotocamera alla prova ...
FUJIFILM X-T30 III, la nuova mirrorless compatta FUJIFILM X-T30 III, la nuova mirrorless compatta
La Corea del Sud si mette nelle mani di ...
Addio console: Just Dance Now trasforma ...
Driver Radeon Adrenalin 25.10: perch&egr...
Oltre le GPU: NVIDIA annuncia NVQLink, ...
Samsung lancia il Team Galaxy Italia per...
Magic Leap: indistinguibili dai normali ...
Aruba Cloud: trasparenza sui costi e str...
Quando il cloud si blocca e resti al fre...
Integrare per competere, la sfida digita...
Leggenda del rally e modernità: S...
La Python Software Foundation rinuncia a...
Full HD e QLED, è in offerta un TV da 32...
Honda ha rilasciato un nuovo video sul p...
Resident Evil Requiem: arriva su Switch ...
Marshall Acton III in promo su Amazon 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: 08:24.


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