webForumDet fria alternativet

knepig jämförelse

PHPur PHP

3 svar · 186 visningar · startad av kittlos

kittlosMedlem sedan sep. 2002205 inlägg
#1

Jag vill att invalt filnamn ska jämföras med existerande filnamn i databasen.

Den ska plocka ut filnamn som påminner om det som användaren vill lägga in, MEN den ska ignorera eventuella siffror i filnamnen...

tex

filnamnet
minbild290.jpg

ska hitta existerande bilder:

mina.jpg
bildbank.jpg
evasnyabild290.jpg
evasnyabild48.jpg

men INTE

xyz290.jpg
opas290.gif
persson.jpg

Alltså vill jag att siffror och filändelse filtreras bort innan jämförelsen.

använder för närvarande

similar_text($filename, $existing_image, $similarity_pct);

som är bra för att man kan reglera procentgraden.

Några tips?

kittlosMedlem sedan sep. 2002205 inlägg
#2

ok, jag har klippt bort filändelsen med substr_replace, så nu kan man ju få den att fungera hyfsat med procentsatsen i similar_text, men finns det något sätt att strippa bort alla siffror i en sträng?

AgaithMedlem sedan jan. 2001191 inlägg
#3

är inte så bra på det men borde du inte kunna lösa det med ereg_replace eller liknande?

detta kan fungera:

$utan_siffror = ereg_replace ('[0-9]', "", $med_siffror);
kittlosMedlem sedan sep. 2002205 inlägg
#4

Jepp, kom precis på samma lösning och det fungerar bra. Tack!

$short_existing = preg_replace ( "'([0-9])'", "", $existing_image );
133 ms totalt · 3 externa anrop · v20260731065814-full.c74b5be1
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)