13. juni 2006 - 23:52
Der er
36 kommentarer og 1 løsning
Kun komma eller semikolon imellem tallene
Hej Jeg skal bruge en regexp, der sørg for at imellem tal kun forekommer enten semikolon eller komma og det må ikke være både semikolon og komma. På forhånd tak
Annonceindlæg fra Trustworks
Tillid i en Zero-Trust verden
Med voksende trusler, nye EU-krav og øget kompleksitet er cybersikkerhed nu en central ledelsesopgave på linje med strategi og økonomi.
mm.. tror ikke, for det er krævet at der både foran delimiter er efter er tal
Snakker vi heltal eller kommatal? Heltal: ^(\d+[,;])*\d+$
Kommatal (med decimalpunktum): ^(\d+(\.\d+)?[,;])*\d+(\.\d+)$
ok, ja det er heltal, men giver din version plads til at der kan være blank tegn imellem komma eller semikolon og tallet ?, for det kan der nemlig forekomme.
mm.. synes ikke jeg kan få den til at fungere, den bliver ikke sand, jeg bruger den i asp
Sorry, det virker perfekt, hvis bare du kunne ændre den til at der gerne må stå blank tegn imellem komma eller semikolon.
Lige en sidste rettelse, hvis du også kunne ændre således at der også må stå bogstaver.
Ikke ifølge din oprindelige formulering, men det fikser vi da bare :^) Jeg går ud fra at der altid skal være , eller ; imellem 2 tal, og at der aldrig kun er mellemrum? Et bud: ^ *(\d+(\.\d+)? *[,;] *)*\d+(\.\d+) *$ Som også tillader mellemrum i start og slut.
14. juni 2006 - 10:17
#10
Jeg synes at du kommer længere og længere væk fra dit oprindelige oplæg. ;^) Hvor er det der må stå bogstaver?
14. juni 2006 - 10:58
#11
he he..ja beklager behoven ændre sig hurtigt, bogstaverne skal stå alene eller sammen med tallene, men stadig adskillet af ";" eller "," og stadig plads til blanke tegn imellem. Takker
14. juni 2006 - 11:55
#12
Vil det siga at der nogen gange slet ikke er tal til stede? F.eks. a,b,12a,34;23;c
14. juni 2006 - 11:56
#13
Eller hvad med: a;111m111,4
14. juni 2006 - 12:40
#14
ja helt rigtig
14. juni 2006 - 15:18
#15
Hmmm, jeg synes efterhånden at det er ligt vagt hvad der præcis anskiller et lovligt fra et ulovligt mønster. Men her er et bud: ^([a-zæøå0-9]+ *[,;] *)*[a-zæøå0-9]+*$
18. juni 2006 - 13:39
#16
sorry det varede så længe, jeg får en fejl, ved den sidste "uventet kvantor"
18. juni 2006 - 13:48
#17
^([a-zæøå0-9]+ *[,;] *)*[a-zæøå0-9]+$
18. juni 2006 - 13:54
#18
Den tillader desværre ikke bogstaver, når jeg skriver f.eks. 3243w3,433221 så giver den false
18. juni 2006 - 13:57
#19
hov, nej det var fordi jeg indtastede stor bogstav, for at den også tillader stor bogstaver skriver jeg vel bare ^([a-zæøåA-ZÆØÅ0-9]+ *[,;] *)*[a-zæøåA-ZÆØÅ0-9]+$
18. juni 2006 - 13:58
#20
Ja sådan kan man godt gøre det ... men der er en smartere måde. Hvilket sprog programmere du i?
18. juni 2006 - 14:02
#21
i vb til asp
18. juni 2006 - 14:04
#22
lige en anden ting, den tillader ikke whitespaces i starten og slutning af strengen
18. juni 2006 - 14:05
#23
Ok, så skal du kigge på IgoreCase: Set set = New RegExp re.Pattern = "^([a-zæøå0-9]+ *[,;] *)*[a-zæøå0-9]+$" re.IgnoreCase ...
18. juni 2006 - 14:06
#24
Whitespace i start og slut: re.Pattern = "^ *([a-zæøå0-9]+ *[,;] *)*[a-zæøå0-9]+$ *"
18. juni 2006 - 14:22
#25
Nu er den der næsten :), bare med untagelse af at den nu kun tillader whitespace i starten af strengen og imellem, men ikke i slutningen
18. juni 2006 - 14:27
#26
Min fejl. Sådan: re.Pattern = "^ *([a-zæøå0-9]+ *[,;] *)*[a-zæøå0-9]+ *$"
18. juni 2006 - 14:28
#27
Kannon, takker mange gange. Smid et svar.
18. juni 2006 - 14:46
#28
Svar :^)
11. juli 2006 - 15:31
#29
nielle, der lige en meget lille ting ved denne expression, problemmet er at den skulle ikke tillade både at adskille med ";" og "," men kun enten den ene eller anden.
11. juli 2006 - 18:27
#30
Det er nu et lidt underligt format du tillader - på den ene side er der en masse friheder (såsom tilladte mellemrum), og på den anden side har du alligevel nogle strenge krav. Værsgod (den bliver ikke ligefrem kortere ;^): re.Pattern = "^ *[a-zæøå0-9]+ *$|^ *[a-zæøå0-9]+ *[,;] *[a-zæøå0-9]+ *$|^ *[a-zæøå0-9]+ *([,;]) *[a-zæøå0-9]+ *(\\1 *[a-zæøå0-9]+ *)*$"
11. juli 2006 - 22:09
#31
Den virker ellers fint, dog tillader den ikke at adskille vha. ;
11. juli 2006 - 22:16
#32
Det gør den da eller pænr nok hos mig: 123;456;789 accepteres som det skal.
11. juli 2006 - 22:40
#33
Jeg tjekker lige igen.
11. juli 2006 - 22:42
#34
Den virker helt ok, hvis jeg indtaster 2 id'er men når jeg indtaster 3 som du har gjort for oven, så tillader den ikke. det ret mærkeligt
11. juli 2006 - 22:44
#35
Så prøv lige med denne i stedet: re.Pattern = "^ *[a-zæøå0-9]+ *$|^ *[a-zæøå0-9]+ *[,;] *[a-zæøå0-9]+ *$|^ *[a-zæøå0-9]+ *([,;]) *[a-zæøå0-9]+ *(\1 *[a-zæøå0-9]+ *)*$"
11. juli 2006 - 22:48
#36
Super kannon. :) takker.
11. juli 2006 - 22:57
#37
:^)
Kurser inden for grundlæggende programmering