webForumDet fria alternativet

RegExp

ASP

7 svar · 284 visningar · startad av SannyW

Medlem sedan jan. 2003438 inlägg
Frågan#1

Blir tokig, det står helt still.

Jag skall ändra länkarna med replace. Då dokumentet visar till roten

/

Då vill jag att den automatiskt skall ersätta till

https://www.xxx.se/

	objRegExp.Pattern = "(<a href="/)"
       
        str = objRegExp.Replace(str, "<a href="www.xxx.se/)"

Tack på förhand.

Medlem sedan dec. 20003 887 inlägg
#2

Citationstecknet kan vara ett bekymmer...

objRegExp.Pattern = "<a href=\x22/"
Medlem sedan jan. 2003438 inlägg
#3

detta funkar:

objRegExp.Pattern = "<a href=""http://www.xxx.se"""

men inte:

objRegExp.Pattern = "<a href="http://www.xxx.se" "

Hur skall jag komma runt detta.

När jag använder dubbelsnuttar så hittas inte länken i texten.

Medlem sedan dec. 20003 887 inlägg
#4

Testade du inte mitt förslag?

Medlem sedan jan. 2003438 inlägg
#5

Jo, förlåt.

Det funkar inte lokalt på datorn.

Problemet som jag har är att vissa länkar är:
/arne/index.html

och vissa är

http://www.xxx.se/kalle/index.html

Hur kan jag göra för att få de som jobbar mot / och de som är inskrivna med http://www.xxx.se så de jobbar från
samma start adress.

https://www.xxx.se

Hoppas någon förstår vad jag försöker förklara.

Förklara gärna om jag tänker helt uppåt väggarna.

En liten fråga om scriptet, Går det att binda ihop start

<td width=""560"" valign=""top"">

med tillhörande stängning </td> på något sätt??

<body> och </body> funkar så klart då de är unika men annars?

Skickar med koden här under:

<%
function BinToText(varBinData, intDataSizeInBytes)
	const adFldLong = 128
	const adVarChar = 200
	set objRS = Server.CreateObject("ADODB.Recordset")
	objRS.Fields.Append "txt", adVarChar, intDataSizeInBytes, adFldLong
	objRS.Open
	objRS.AddNew
	objRS.Fields("txt").AppendChunk(varBinData)
	tmp = objRS("txt").Value
	objRS.Close
	BinToText = tmp
end function
%>
<%Function getNews(n)
	sFind = "<td width=""560"" valign=""top"">"
	Set objHTTP = Server.CreateObject("Microsoft.XMLHTTP")
	objHTTP.Open "GET", "url", False
	objHTTP.Send

	Set objRegExp = New regexp
	objRegExp.Global = True
	objRegExp.IgnoreCase = True
	
	str = BinToText(objHTTP.responseBody,35000)
	Set objHTTP = Nothing

	objRegExp.Pattern = "<a href="""
        str = objRegExp.Replace(str, "<a href=""www.xxx.se/")'

	str = Right(str,Len(str)-InStr(str,sFind)+1-len(sFind))
	str = Left(str,InStr(str,"javascript:history.back()")-1)
	a=split(str,"<table>")
	for i = 0 to Ubound(a)
		if i = n then
			exit for
		end if
		myStr=myStr+a(i)+"<br>"
	next
	getNews = myStr
End Function%>

<%=getNews(100)%>
Medlem sedan jan. 2003438 inlägg
#6

Säg att man har en länk typ:

http://www.nisses.se/index.html

Kan man då leta upp

objRegExp.Pattern = "http://"

och ta bort nästföljande/ersätta nästföljande 15 tecken?

Medlem sedan jan. 2003438 inlägg
#7

Löste mitt problem genom att:

Lägga till .{antal tecken}http://.{antal tecken}

egentligen förstår jag nog inte riktigt vad jag själv har gjort, men det fungerar så långt. Tror att jag tar bort antal tecken före och efter.

objRegExp.Pattern = ".{19}http://.{17}"

Nu uppkom ett nytt problem att man kan skriva

<a href= utan " då funkar inte scriptet som det är tänkt.

objRegExp.Pattern = "<a href="""
        str = objRegExp.Replace(str, "<a href=""www.xxxxxxxxx.se/")'"

	objRegExp.Pattern = ".{19}[url]http://.[/url]{17}"
        str = objRegExp.Replace(str, "<a href=""www.xxxxxxxxx.se/")'"

Om någon upptäcker att jag är helt ute och reser i mina utdrifter så förklara gärna.

Medlem sedan jan. 2003438 inlägg
#8

Problemet kvar står med:

objRegExp.Pattern = "(<a href="")|(<a href=)"
str = objRegExp.Replace(str, "<a href=""www.xxx.se/")'"

Där fattas en dubbelsnutt " då skrivs inget ut.

Problemet är på de länkarna som ser ut enligt följande:

<a href=index.html</a>

För då blir väl replace:
<a href="www.xxx.se/index.html > och då fattas en ". Resultatet blir ingen text.

Några idéer??

262 ms totalt · 3 externa anrop · v20260731065814-full.767b4345
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)