Halloj. Tänkte plocka lite fina värden från en annan sida, köra dem genom en RegExptvätt och få Är det XML data du hämtar? Varför inte transformera det med XSLT eller hämta ut delar med X-Path? Hmm.. Nej, det är inte XML. Anledningen till nomenklaturen av variablerna är mest för att jag vill se om allt fungerar som det ska. Det är HTML och text. Men jag har använt den innan för att hämta XML och då använde jag XSLT, men som sagt, inte nu. När du skriver så här i Regex Japp. Dilemmat verkar numera vara att den vägrar skriva ut resultatet i ASP.NET om jag kör en Windows Form och matar in råvärdet i textbox1 och plockar ut resultatet i textbox2 så blir det helrätt.Plocka data med XMLHTTP och använda RegExp
ut en mer städad variant av vad jag vill ha på min sida.
Följande kod inleder sidan:
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Text.RegularExpressions" %>
<%@ Import Namespace="System.Web" %>
<%@ Import Namespace="System.Text" %>
<%@ Import Namespace="System.Net" %>
Och fortsätter sedan med:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
'Get ID
Dim pID As String = Request.QueryString("ID")
Dim oXMLHttp
Dim sXML
Dim URL
oXMLHttp = Server.CreateObject("MSXML2.ServerXMLHTTP")
URL = "http://online.server.com/tracking/set_param_pub_tracking.jsp?id=" & pID
oXMLHttp.open("GET", URL, False)
oXMLHttp.send() ' Send the request.
If oXMLHttp.status = 200 Then
sXML = oXMLHttp.responseText
Else
sXML = "Fick inget svar från sidan"
End If
Return_CompExp(sXML)
End Sub
Protected Sub Return_CompExp(ByVal sXML As String)
Dim MyMatches As MatchCollection
Dim objAlphaPattern As Regex = New Regex("<!--Details-->(.*?)<!--End details-->")
'put all matches in the collection
MyMatches = objAlphaPattern.Matches(sXML)
'iterate over the collection
Dim i As Integer
For i = 0 To MyMatches.Count - 1
Me.lblResultSet.Text = (MyMatches(i).ToString())
Next
Det blir finfint om jag skiter i att köra Return_CompExp subben, men då får jag ju med allt, vilket jag absolut inte vill. Jag är bara intresserad av det som kommer ut på andra sidan RegExp:et..
Däremot så får jag inga fel, bara en blank sida.
Någon har ett humm om varför???
Sv: Plocka data med XMLHTTP och använda RegExp
Sv:Plocka data med XMLHTTP och använda RegExp
Sv:Plocka data med XMLHTTP och använda RegExp
xyz(.*?)xyz
så betyder det att det som finns mellan xyz och xyz ska läggas i en "grupp".
Du kan hitta resultatet under Match.Groups() om jag minns rätt nu.Sv: Plocka data med XMLHTTP och använda RegExp
Skumt.