Please verify you are human

Hilfe benötigt bei Regular Expressions
  Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 15:26

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Hilfe benötigt bei Regular Expressions

Discussion on Hilfe benötigt bei Regular Expressions within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
Dremorac's Avatar
 
elite*gold: 0
Join Date: Jun 2015
Posts: 27
Received Thanks: 9
Hilfe benötigt bei Regular Expressions

Einen schönen Abend wünsche ich, meiner beginnt aktuell nicht so gut
aber evtl. lässt sich das mit etwas Hilfe ändern!

Ich möchte von einer Webseite bzw nach dem Login bestimmte Daten auslesen.
Die von User zu User unterschiedlich sind, dafür möchte ich Regex verwenden.

Um nun auf den Punkt zu kommen, hier einige Code Ausschnitte:

regex Function:

Hier habe ich bereits versucht: str = (m.Groups(0).Value) den Integer 0 durch 1 zu ersetzen jedoch kein Erfolg.

Aufruf der Function:

Hier versuchte ich auch den Sourcecode über den Browser zu verwenden wo 1 Abweichung fest zu stellen war: keine \ enthalten.
Was ich jedoch nicht Sinnvoll fand da die \ im String mit dem ich arbeite enthalten sind warum sollte ich sie dann entfernen!? Dann würde es sich mir ergeben das ich keine Matches habe.

Ausgabe des Ergebnisses:

Text innerhalb des HTML Codes:

An diesen Text innerhalb der HTML Codes bin ich gekommen indem ich mir einfach den Text meines source Strings in einer MsgBox ausgab.

Theoretisch sollte ich also am Ende von der Ausgabe der Function den Text:
"Credits: 423.273", in meinem Label stehen haben, jedoch steht lediglich "Credits: " darin.

Hoffe jemand kann mir eine Lösung zu meinem Problem bieten.

MfG: Dremorac
Dremorac is offline  
Old 05/27/2017, 16:32   #2
 
elite*gold: 100
Join Date: Apr 2008
Posts: 860
Received Thanks: 1,488
Bist du sicher, dass der HTML Code so aussieht, und nicht etwa so?
Code:
<span class=\"money\">423.273<\/span> Credits
(Man beachte das "=" nach dem "class" )
florian0 is offline  
Old 05/27/2017, 17:06   #3
 
Dremorac's Avatar
 
elite*gold: 0
Join Date: Jun 2015
Posts: 27
Received Thanks: 9
Danke für deine Antwort: florian0, jedoch bin ich mir sicher das dies der Korrekte Text in meinem String ist.
Grund für diese Feststellung ist, dass ich weitere Regex Funktionen Implementiert habe:


Jedoch bekomme ich bei keiner eine Korreckte ausgabe des gewünschten Wertes.

#Update1: Ich habe nun meine Regex Function umgeschrieben:


Nun bekomme ich zumindest die Aussage "No Match" als Ausgabewert im Label!
Also habe ich doch einen Fehler in meinen Pattern!
Ich werde mir das ganze ansehen und diesen Post bei Bedarf erneut Aktualisieren.

#Update 2: Bedauerlicherweise gibt mir meine Funktion immer No Match zurück.
Selbst wenn ich lediglich:
Code:
([^<]*)
bei den Pattern eintrage.

Demzufolge muss an der Function etwas faul sein!

MfG: Dremorac
Dremorac is offline  
Old 05/27/2017, 21:35   #4
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Versuch mal das "(.*?)" pattern. Damit teste ich immer.
Ludder231 is offline  
Old 05/27/2017, 22:30   #5
 
Dremorac's Avatar
 
elite*gold: 0
Join Date: Jun 2015
Posts: 27
Received Thanks: 9
Leider bekomme ich auch mit "(.*?)" eine No Match ausgabe.
Jedoch werde ich einfach meine Lehrer austricksen,
indem ich das Programm in C# schreibe und Compiled für das Projekt nehme.

Danke allen die versuchten mir zu helfen auch an alle im DiscordServer!

MfG: Dremorac
Dremorac is offline  
Old 05/28/2017, 00:41   #6
 
EngelEatos's Avatar
 
elite*gold: 22
Join Date: May 2011
Posts: 516
Received Thanks: 178
Der Vollständigkeit halber:

Code:
Dim src As String = "<span class=""money"">423.273</span> Credits"
MsgBox(rgx(src, "<span class=""money"">([^<]*)</span> Credits"))
MsgBox(rgx(src, "<span class=""money"">(.*?)</span> Credits"))
Code:
Public Function rgx(src As String, pattern As String) As String
    Dim str As String = Nothing
    For Each m As Match In (New Regex(pattern).Matches(src))
        str = (m.Groups(1).Value)
    Next
    Return str
End Function
()

Beide Pattern funktionieren wunderbar

Edit:
Ich glaube, es lag daran, wie du deine double quotes escaped hast.
in vb.net macht macht man das so: " -> ""
Und du hast es C#-like gemacht. Kann deinen Fehler damit auch reproduzieren.
EngelEatos is offline  
Old 05/28/2017, 00:43   #7
 
Dremorac's Avatar
 
elite*gold: 0
Join Date: Jun 2015
Posts: 27
Received Thanks: 9
Ich werde es dennoch einmal austesten ob dies die Lösung wäre!
Herzlichen dank für deine Antwort.

#Update 1: Jetzt klappt alles wunderbar so wie es soll!
Hätte nicht gedacht das VB.NET derart viele
Code:
"
haben möchte.

MfG: Dremorac
Dremorac is offline  
Old 05/28/2017, 04:35   #8
 
EngelEatos's Avatar
 
elite*gold: 22
Join Date: May 2011
Posts: 516
Received Thanks: 178
Sry. hab mich selbst mit der Anzahl der benötigten quotes vertan. Habs im Post oben ausgebessert. vb.net ist für mich doch schon bisschen zu lange her.
EngelEatos is offline  
Old 05/29/2017, 22:12   #9

 
Njahs's Avatar
 
elite*gold: 574
Join Date: Nov 2010
Posts: 2,498
Received Thanks: 726
Wenn du öfters (komplexe) Pattern erstellst würde ich dir externe Programme wie beispielsweise Regex Hero ans Herz legen.
Einziger Nachteil dabei ist, dass du das Pattern beim späteren einfügen in deinen Code noch selbst escapen musst.

Grüße
Njahs is offline  
Old 05/29/2017, 23:54   #10

 
Syc's Avatar
 
elite*gold: 666
Join Date: Apr 2011
Posts: 5,810
Received Thanks: 2,418
Warum benutzt du denn regex für HTML? Gibt doch entsprechende libraries um HTML anständig zu parsen.

Mit regex machst du dir hier das Leben nur schwer.
Syc is offline  
Old 05/30/2017, 11:11   #11
 
Dremorac's Avatar
 
elite*gold: 0
Join Date: Jun 2015
Posts: 27
Received Thanks: 9
Das lag daran dass ich dabei etwas Lernen möchte.
Ich weiß Shadow992 hat es mir auch bereits gesagt da reicht eine einfache: GetStringBetween Function die es zum nachwerfen gibt.

Jedoch will ich nicht C&P lernen (C&P ... hehe, lernen ... hehe xD)
sondern auch mein wissen erweitern.

Davon abgesehen bin ich jetzt gerade an einem Punkt angelangt,
wo ich für mein Programm werte auslesen muss die sich x mal im source wiederholen können.
Diese Werte kann ich am Ende einfach in einer ListBox ausgeben.
Also um auch Programmcode und somit am Ende auch MB zu sparen
gleich die Variante verwenden die man ohnehin benötigt,
auch wenn es erst später Sinnvoll ist diese Methode anzuwenden.

Danke nochmal allen für die Hilfe und auch für eure Kritik zu meiner Denkweise
bzw. Anfänglich Nutzlosen Functions-Anwendung.

MfG: Dremorac
Dremorac is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[Selling] Expressions Of Interest. WOD Wow Account
01/27/2015 - World of Warcraft Trading - 0 Replies
HIa, Im thinking about quitting Wow, I dont have time anymore to play so yeh. Account has Heirlooms, Panda BOA's (some Mythic), Rare Mounts/Pets, There are 3x Lv3 garrisons, over 100K gold and random items spread throughout the toons Main has own guild with random shit in it lol Current Toons: - Lv 100 644 Worgan Resto Druid, Level 100 Worgen Druid | WoW World of Warcraft Armory Profiles | Masked Armory The other Lv 100 are just in Heroic Dungeons, All ALLY cep 1x 96 hunter.
Php5 expressions Problem
01/26/2013 - Metin2 Private Server - 3 Replies
Hi Leute, ich kann auf meinem root keine php5-expressions installieren ich bekomme eine fehlermeldung. Ist hier jemand der sich mit freebsd im allgemeinen auskennt? mein Hoster ist xertonia. hier noch die error meldung aus der console
Some words or expressions have been restricted!!
09/18/2011 - SRO Private Server - 1 Replies
Can anyone tell me how to edit that in media.pk2? You can't write words like : cave, wassup and other things! Thank you in foward!
[SGahter]Hilfe bei einem Problem benötigt!!!
01/21/2011 - WoW Bots - 9 Replies
Hey Community, Ich benötige dringend Hilfe für einen Kolegen , da sein Problem weiterhin besteht , dass der Bot bei einen Vorkommen landet 3-4 Meter weiter läuft , aufmounten und einfach weiterfliegt . Er benutzt Vista Ultimate und hat bereits auch unter "Specefic Items" die Erze und Vorkommen eingefügt , aber halt leider Erfolglos.Hier einmal das Log : Jetzt kommt der Hammer : Ich habe mich gerade mit seinen Accountdaten eingeloggt und wollte den Bot starten ... Und mit seinem...
Manga Expressions
05/10/2006 - General Art - 8 Replies
KLICK MISCH



All times are GMT +1. The time now is 15:29.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.