webForumDet fria alternativet

Rensa bort bokstäver och ersätta

PHP

3 svar · 437 visningar · startad av Nova

Medlem sedan feb. 2005216 inlägg
Frågan#1

Jag hämtar upp och skriver ut ett fält från databasen Mysql och det jag skriver ut ser ut så här:

Postpaket/brev (Frakt till SE : 0.11 Kg):

Jag skulle vilja rensa bort allt utom siffrorna och ersätta punkten med ett , (kommatecken). Så i detta fallet vill jag ha 0,11 i stället för Postpaket/brev (Frakt till SE : 0.11 Kg):
hur gör man detta?

Medlem sedan juni 20019 519 inlägg
#2

regex för att hitta alla tecken som inte är ett tal och "." just nu => [^\d\.]+

ersätt det med "", sen kör du bara en vanlig replace för . => ,

javascript kod, bör nästan vara samma sak för php:

var str = "Postpaket/brev (Frakt till SE : 0.11 Kg):";
var result = str.replace(/[^\d.]+/ig, "").replace(/\./,",");
alert(result)
Medlem sedan feb. 2005216 inlägg
#3

Nu fungerar det så långt att det tar bort allt överflödigt utom siffror och punkten. Men jag får inte till att ersätta punkten.
Så här långt fungerar det:

$vikt = preg_replace("/[^\d\.]+/",'', $db_ary['title']);

Men hur fortsätter jag?

Medlem sedan juni 20019 519 inlägg
#4

php: str_replace

$vikt = str_replace(".", ",", preg_replace("/[^\d\.]+/",'', $db_ary['title']))
272 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
139 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
138 ms — ändringar (db)