FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Medlem
|
Min rubrik och beskrivning kanske inte är särskilt beskrivande men den reflekterar min frustration över att inte få det att fungera.
Jag har följande rad kod: Citat:
Citat:
"/1234.jpg" "/1234_testbild7.jpg" "/4110_Pannkakor-med-sylt.tif" Alltså, strängen skall innehålla följande (i ordning): * ett snedstreck * en serie siffror som inte börjar på noll * eventuellt ett understreck * eventuellt tecken som innehåller bokstäver, siffror eller bindestreck * en punkt * Antingen jpg eller tif, med gemener eller versaler. Så jag behöver hjälp. Jag har försökt ett antal varianter och googlat men inte funnit någon lösning ännu.... |
||
![]() |
![]() |
![]() |
#2 | |||
|
||||
Bara ett inlägg till!
|
Du har glömt att du ska stoppa in en delimiter som första och sista tecken i stängen. Använd förslagsvis en slash.
|
|||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Medlem
|
Citat:
Jag inser att jag letar efter någon annan funktion än den i mitt första inlägg. Jag vill veta om strängen helt passar in i testet eller inte alls. Vad skall jag använda då? Är själva uttrycket ovan i sig korrekt enligt min beskrivning? Jag behöver en liten knuff framåt igen, tror jag... |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Medlem
|
Citat:
Kod:
if (preg_match("/^\/[1-9].[0-9]*_[0-9a-zA-Z-]*\.(jpg|tif)$/",$_SERVER["REQUEST_URI"]) == 1) Sen kommer nästa pilsner. Jag skall ta ut numret ur filnamnet, dvs det mellan första /-tecknet och den första icke-numeriska tecknet som kommer. Exempel: /12345.jpg -> 12345 /12367_Test.jpg -> 12367 /12389_Test-720.jpg -> 12389 Jag misstänker att det även här är någon regexp-funktion som kommer till användning... |
||
![]() |
![]() |
![]() |
#5 | |||
|
||||
Mycket flitig postare
|
Citat:
Kod:
if(preg_match('/^\/([1-9][0-9]*)_[0-9a-z-]*\.(?:jpg|tif)$/i',$_SERVER["REQUEST_URI"],$m)) { $nummer = $m[1]; } Citat:
|
|||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Medlem
|
Citat:
Jag tror jag skall bli självgående i denna fråga nu. Tack för hjälpen! |
||
![]() |
![]() |
![]() |
#7 | |||
|
||||
Mycket flitig postare
|
Citat:
Det du vill fånga in sätter du i paranteser () och om du vill slippa få med ett värde (eller undvika processorbeslatningen) så kan du använda (?: med ) istället, t.ex.: /(Jag vill )(?:inte) / Regexp är spännande och praktiskt men lite klurigt ibland. |
|||
![]() |
![]() |
Svara |
|
|