/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
At matche en skråstreg
Fra : David Trasbo


Dato : 26-12-07 16:28

Jeg har et lille problem med et regulært udtryk, som jeg håber, nogle kan
hjælpe mig med. Det drejer sig om, at jeg gerne have udtrykket til at
matche, både hvis inputtet _har_ en skråstreg til sidst, og hvis det _ikke_
har.

Hvis jeg bruger udtrykket:

/\/(.+)\/(.*)[\/?]/

.... matcher inputtet kun, hvis der _er_ en skråstreg tilsidst.

Og hvis jeg skriver:

/\/(.+)\/(.*)(\/?)/
(Altså med parenteser istedet for firkantede parenteser.)

.... matcher det kun, hvis der _ikke_ er en skråstreg tilsidst i inputtet.
Men hvis jeg undlader at escape skråstregen, går det selvfølgelig helt galt.

Jeg håber, at nogle gider at give en hjælpende hånd.

--
David Trasbo.
http://lki.dk - Luk Kunderne Ind.



 
 
Andreas Andersen (28-12-2007)
Kommentar
Fra : Andreas Andersen


Dato : 28-12-07 21:44


"David Trasbo" <davidtrasbo@gmail.com> wrote in message
news:4772730d$0$90274$14726298@news.sunsite.dk...
> Jeg har et lille problem med et regulært udtryk, som jeg håber, nogle kan
> hjælpe mig med. Det drejer sig om, at jeg gerne have udtrykket til at
> matche, både hvis inputtet _har_ en skråstreg til sidst, og hvis det
> _ikke_ har.
>
> Hvis jeg bruger udtrykket:
>
> /\/(.+)\/(.*)[\/?]/
>
> ... matcher inputtet kun, hvis der _er_ en skråstreg tilsidst.
>
> Og hvis jeg skriver:
>
> /\/(.+)\/(.*)(\/?)/
> (Altså med parenteser istedet for firkantede parenteser.)
>
> ... matcher det kun, hvis der _ikke_ er en skråstreg tilsidst i inputtet.

Jeg er ikke 100% sikker på hvad du vil, men her er et forslag:

/\/([^\/]+)\/([^\/]*)\/?/

Skulle gerne matche /blabla/blabla og valgfri skråstreg til sidst.

--
Andreas


David Trasbo (29-12-2007)
Kommentar
Fra : David Trasbo


Dato : 29-12-07 13:34

Andreas Andersen skrev:

<klip>

>> ... matcher det kun, hvis der _ikke_ er en skråstreg tilsidst i inputtet.
>
> Jeg er ikke 100% sikker på hvad du vil, men her er et forslag:
>
> /\/([^\/]+)\/([^\/]*)\/?/
>
> Skulle gerne matche /blabla/blabla og valgfri skråstreg til sidst.

Jeg er heller ikke helt sikker på, hvordan den der virker. Men tak for
forslaget alligevel.

--
David Trasbo.
http://lki.dk - Luk Kunderne Ind.



Christian Hansen (29-12-2007)
Kommentar
Fra : Christian Hansen


Dato : 29-12-07 14:17

Hej

Hvad vil du præcis gerne matche? Som jeg læser nedenstående, vil du
matche noget ala

/test/tada
/test/tada/
/test//

Men også "/tada/test/ asds lslæskd flsækdj fæsldk f/tada/mere" vil blive
fanget.

Du har sat dit ? i en tegnklasse [], hvorfor det ikke læses som {0,1}
men blot som et spørgsmålstegn - dit match skal altså indeholde enten en
/ eller et ? til sidst. Du skulle altså hellere skrive [\/]? eller bare \/?

Mvh Christian

David Trasbo wrote:
> Jeg har et lille problem med et regulært udtryk, som jeg håber, nogle kan
> hjælpe mig med. Det drejer sig om, at jeg gerne have udtrykket til at
> matche, både hvis inputtet _har_ en skråstreg til sidst, og hvis det _ikke_
> har.
>
> Hvis jeg bruger udtrykket:
>
> /\/(.+)\/(.*)[\/?]/
>
> ... matcher inputtet kun, hvis der _er_ en skråstreg tilsidst.
>
> Og hvis jeg skriver:
>
> /\/(.+)\/(.*)(\/?)/
> (Altså med parenteser istedet for firkantede parenteser.)
>
> ... matcher det kun, hvis der _ikke_ er en skråstreg tilsidst i inputtet.
> Men hvis jeg undlader at escape skråstregen, går det selvfølgelig helt galt.
>
> Jeg håber, at nogle gider at give en hjælpende hånd.
>

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408924
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste