WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Hjälp med reguljärt uttryck (https://www.wn.se/forum/showthread.php?t=1050776)

swan 2011-11-03 11:31

Hjälp med reguljärt uttryck
 
Jag har en textfil där raderna ser ut så här:

leverans inom 12-15 dagar
vi levererar om 13 dagar
vi levererar om 19 dagar
ungefär om 11-19 dagar

Nu skulle jag vilja plocka ut dagarna med ett reguljärt uttryck.

Så här skriver jag:

(\d{1,2}(\-\d{1,2})?)\s*dagar

Men det fungerar inte riktigt. Jag skriver i PHP och när jag kollar i $match[1] innehåller den:

15
13
19
19

Det jag vill få ut är

12-15
13
19
11-19

Skriver jag istället

(\d{1,2}(\-\d{1,2}))\s*dagar

så får jag bara ut

12-15
11-19

och missar därmed två rader.

Vad är fel?

orreborre 2011-11-03 11:46

Denna borde fungera: '/([0-9]+(\-([0-9]+))?)\s*dagar/'.

Din första bör fungera som den ska vad jag kan se.
Felet i din andra är att det måste vara ett bindestreck och efterföljande siffror för att den ska matcha.

//Edit
Ja, din första fungerar fint för mig.

tartareandesire 2011-11-03 11:59

Japp, inget fel på den första, fungerar fint för mig också.


Alla tider är GMT +2. Klockan är nu 22:39.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson