webForumDet fria alternativet

Regular Expressions...

7 svar · 392 visningar · startad av trexter.com

trexter.comMedlem sedan apr. 20021 203 inlägg
#1

...började med det för ca 10 minuter. Jag har följande sträng:
http://www.trexter.com/v2/default.asp
eller: http://www.trexter.com
eller: http://www.trexter.com/
eller: http://trexter.com/

Jag vill ha alla tecken efter de två första // och sedan allt fram till och med (och inkluderat) .com, .nu, .net, .se eller .info.

Jag har börjat lite men får inte riktigt ihop det (lär mig på Vides hemsida):
\x47{2}

Detta (om jag gjort rätt vill säga) skulle ge: //
... men sen då?

:)

trexter.comMedlem sedan apr. 20021 203 inlägg
#2

Jag tror jag kan ha detta i slutet:
(com)|(nu)|(net)

Men hur gör jag för att träffa alla tecken efter // och fram till toppdomänen (com, nu osv) ?

:)

trexter.comMedlem sedan apr. 20021 203 inlägg
#3

Varför får jag ingen träff på denna?

\x47{2}[a-z]+\.(com)|(nu)|(net)

:)

trexter.comMedlem sedan apr. 20021 203 inlägg
#4

Ny kod nu...
\.(.+)\.(net|com|se)

ger strängar som t.ex. .altavisa.com
Hur får jag bort punkten?

:)

trexter.comMedlem sedan apr. 20021 203 inlägg
#5

Verkligen ingen som har någon aning? :q

trexter.comMedlem sedan apr. 20021 203 inlägg
#6

... man kan tydligen sätta () runt delar av uttrycket och på så sätt föra in det funna kriteriet i olika variabler:

objRegExp.Pattern = "(\.)((.+)\.(net|com|se))"
Set colMatches = objRegExp.Execute(strText)
	For each objMatch in colMatches
		Response.Write objMatch.Value & "<BR>"
	Next

ger $1 och $2

Men hur ändrar jag objMatch.Value till bara variabel 2 och inte båda? :q

Får jag reda på det är mitt problem löst.

Och förresten, tack för alla svar! :p ;)

:)

trexter.comMedlem sedan apr. 20021 203 inlägg
#7

*up we go*
... nu kör jag först ett reguljärt uttryck och sedan en Left med 1 som värde för att få bort punkten.
Kanske inte den mest optimala lösningen... ;)

:)

tohaMedlem sedan dec. 1999707 inlägg
#8
	s =				"a [url]http://hej.com[/url] a [url]http://www.ericson.se[/url] a"
	Set re =		New RegExp
	re.Global =		True
	re.IgnoreCase =		True

	re.Pattern =	"(?://)([a-z0-9./]*?)(?=\.\s|\s)"
	Set colMatches = re.Execute(s)
	For each objMatch in colMatches
		MsgBox """" & objMatch.SubMatches(0) & """"
	Next
	Set re =		Nothing

Det verkar fungera. :P

131 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)