.red:
SubjectString = "<!-- local=""bob"" file=""saf"" -->123<!-- local--> </span> </p> <p class=""id""> <span class=""cust"">asd</span>"
Dim myRegExp, ResultString
Set myRegExp = New RegExp
myRegExp.IgnoreCase = True
myRegExp.Global = True
myRegExp.Pattern = "(<!-- local=""[^""]+"" file=""[^""]+"" -->)[\d\-:]+(<!-- local--> </span> </p> <p class=""id""> <span class=""cust"">[\s\S]*?</span>)"
ResultString = myRegExp.Replace(SubjectString,"$1$2")
Response.Write ResultString
' Annat Exempel....
Set myRegExp = New RegExp
myRegExp.IgnoreCase = True
myRegExp.Global = True
myRegExp.Pattern = "(<!-- local=""[^""]+"" file=""[^""]+"" -->)[\d\-:]+(<!-- local-->)"
ResultString = myRegExp.Replace(SubjectString,"$1$2")
Response.Write ResultString
båda Exemplena fungera för mig...
oskarsMedlem sedan nov. 20051 317 inläggÅh du är grym!
Det där hjälpte mig!
TACK!
oskarsMedlem sedan nov. 20051 317 inläggJippie! Jag har lyckats göra mitt första fullt fungerande RegExp-pattern :D hehe!
(#.*?#06[0-4]\d+#.*?#)
Det hittar rader i en textfil som ser ut så här #12#060988#247833#
:h :r
Vad betyder egentligen [0-4]\d+ ? Jag tror att det betyder att det kan vara noll till fyra stycken siffror... men vad betyder plusset?
PPeter SMedlem sedan dec. 20025 483 inlägg [0-4] betyder siffrorna 0, 1, 2, 3 eller 4. Endast en siffra alltså.
\d+ betyder en eller flera siffror, och är samma sak som [0-9]+.
(#\d{2}#06[0-4]\d+#\d+#)
hade jag nog kört om jag hade varit dig... .*? är ingen bra lösning ...
om du vill att ditt regExp skall träffa (exempelvis 0-4 så kan du skriva):
\d{0-4}
oskarsMedlem sedan nov. 20051 317 inlägg
Peter S skrev:
[0-4] betyder siffrorna 0, 1, 2, 3 eller 4. Endast en siffra alltså.
\d+ betyder en eller flera siffror, och är samma sak som [0-9]+.
Aha! :) Inte konstigt att det har blivit fel förut :e
Så med andra ord så det så här:
[0-4] betyder 1, 2, 3 eller 4.
[0-9]+ betyder att det är siffrorna 0-9, men det kan vara t.ex 5st siffror i följd?
voigtann1 skrev:
(#\d{2}#06[0-4]\d+#\d+#)
hade jag nog kört om jag hade varit dig... .*? är ingen bra lösning ...
om du vill att ditt regExp skall träffa (exempelvis 0-4 så kan du skriva):
\d{0-4}
Aha, okej! \d{2} antar jag betyder "två stycken siffror"? Då borde jag ju kunna sätta \d{6} istället för \d+ där i slutet, för där är det alltid 6st siffror.
Men där jag har skrivit "[0-4]\d+". Är det samma som [0-4]+ ?
nej:
[0-4]\d+ är:
den måste träffar 0-4 och sen 1-fler tal:
01234 kommer att träffas
men inte 51234
oskarsMedlem sedan nov. 20051 317 inläggAha okej! Tack!
Men \d{6} träffar alltså allt som är siffror?
Vart har du lärt dig det du kan om RegExp? :)
precis \d{6} är att det måste vara 6 nummer. Jag är långt ifrån duktig inom RegExp. Jag gillar det och då inte många var så jätte glada vid regExp på wF (för mååånga år sen) så tyckte jag att det hade varit kul att lära mig det så jag kunde hjälpa wF medlemmar om just dessa frågorna. Köpt böcker program och läst från https://www.webeye.nu