Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 09:14 Der er 13 kommentarer og
1 løsning

Regexp der giver det sidste efter punktum

Jeg gør brug af dette regexp til at give mig alt efter et punktum.
(?<=\.)[^.]*$

Testdata:
foo.bar.foo => foo, hvilket er korrekt
foo.bar => bar, hvilket er korrekt
foo => [ingenting], hvilket ikke er det, jeg har brug for. Her vil jeg gerne have foo ud.

Hvad mangler jeg i mit regexp udtryk?
Avatar billede welcor Nybegynder
28. oktober 2012 - 16:36 #1
(?<=\.)[^.]*$|^[^.]*$
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 16:46 #2
Den giver mig ikke enkeltstående 'foo', men virker som mit oprindelige regexp...
Avatar billede welcor Nybegynder
28. oktober 2012 - 19:29 #3
Du må bruke preg.

Testet her: http://www.regextester.com/index2.html
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 19:42 #4
Jeg bruger Expresso, og der virker det desværre ikke.
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 19:45 #5
Kan se det virker på regextester. Jeg giver lige et forsøg i mit .net kode.
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 19:46 #6
Det virker fint. Smid bare et svar ind :)
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 19:48 #7
Du må også gerne skrive lidt, hvad jeg manglede i mit oprindelige regexp, så jeg bliver lidt klogere på, hvordan jeg kan gøre fremover...
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 19:54 #8
Damn, jeg tog fejl. Det virker faktisk ikke. Havde glemt at rette mit data til enkelt 'foo'.

Så mit spørgsmål er stadigvæk åbent.
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 19:56 #9
Det må være ereg, jeg gør brug af i min .net kode.
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 20:40 #10
Jeg fik det endeligt til at virke. Der var intet galt i dit forslag. SMidt et svar ind
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 20:44 #11
Der var sneget et usynligt space ind, da jeg kopierede dit udtryk både Expresso og mit .net kode.
Avatar billede welcor Nybegynder
28. oktober 2012 - 22:25 #12
Jeg var lige bekymret der et øjeblik :)
Avatar billede welcor Nybegynder
28. oktober 2012 - 22:27 #13
Ang. hvad som manglede: jeg lagde en "eller"-del til: |

Selve eller-delen matcher ^[^\.]*$ - hvilket vil sige hele linier uden punktum.
Avatar billede CodingJoe Nybegynder
28. oktober 2012 - 23:16 #14
Ja, fandt ud af det ved at kigge på et regexp skema...der kunne jeg så se at du havde tilføjet et or i mit oprindelige udtryk...tak for hjælpen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester