Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 23:22

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

Advertisement



[Regex] Problem mit Pattern

Discussion on [Regex] Problem mit Pattern within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
roteisenklinge's Avatar
 
elite*gold: 0
Join Date: Apr 2009
Posts: 1,071
Received Thanks: 164
[Regex] Problem mit Pattern

Hallo meine lieben,

habe folgende zwei Probleme

Quote:
Code:
<a class="fbxWelcomeBoxBlock _8o _8s lfloat" href="http://www.facebook.com/johann.goldbaum" aria-hidden="true" tabindex="-1">
Dort möchte ich per Regex den Namen : johann.goldbaum Dieser ändert sich natürlich also .* ?

Patternim ra As New Regex("<a class=""fbxWelcomeBoxBlock _8o _8s lfloat"" href=""http:\/\/www.facebook.com\/(?<name>([^<]+))")

Funktioniert nicht.

Quote:
<script>function envFlush(a){function b(c){for(var d in a)c[d]=a[d];}if(window.requireLazy){requireLazy(['Env'],b);}else{Env=window.Env||{};b(Env);}}envFlush({"u ser":"100005087773375","locale":"de_DE","method":"GET","svn_rev":727171 ,"tier":"","vip":"31.13.81.7","static_base":"http: \/\/static.ak.fbcdn.net\/","www_base":"http:\/\/www.facebook.com\/","rep_lag":2,"fb_dtsg":"AQD3jfOI","ajaxpipe_token ":"AXhLacnmjuODatTx","lhsh":"mAQE67IRZ","tracking_ domain":"http:\/\/pixel.facebook.com","retry_ajax_on_network_error": "1","fbid_emoticons":"1"});</script>
Diese Nutzerid muss auch herausgefiltert werden. Leider komm ich damit überhaupt nicht weiter. Habe mir die Regex Tutorials hier im Forum angeschaut sowie diesen Regex Helper, aber irgendwie komm ich nicht wirklich weiter...

Für eure Hilfe wäre ich sehr dankbar!
roteisenklinge is offline  
Old 02/04/2013, 01:09   #2
 
tolio's Avatar
 
elite*gold: 2932
The Black Market: 169/1/0
Join Date: Oct 2009
Posts: 6,966
Received Thanks: 1,097
so sollte es gehen, hab grad keine lust nen pattern zu machen
frei aus der hand:
Code:
dim name as string = split(split(input,"http://www.facebook.com/")(1),"""")(0)
dim id as string = split(split(input,"""user"":""")(1),"""")(0)
tolio is offline  
Thanks
1 User
Old 02/04/2013, 12:40   #3
 
Mi4uric3's Avatar
 
elite*gold: 405
Join Date: Dec 2007
Posts: 6,615
Received Thanks: 6,358
Quote:
Originally Posted by roteisenklinge View Post
Quote:
<a class="fbxWelcomeBoxBlock _8o _8s lfloat" href="http://www.facebook.com/johann.goldbaum" aria-hidden="true" tabindex="-1">
Diese Nutzerid muss auch herausgefiltert werden. Leider komm ich damit überhaupt nicht weiter. Habe mir die Regex Tutorials hier im Forum angeschaut sowie diesen Regex Helper, aber irgendwie komm ich nicht wirklich weiter...

Für eure Hilfe wäre ich sehr dankbar!
Ist es wichtig, dass du dafür RegEx benutzt?
Visual Basic.Net bietet da nämlich gute Funktionen, um das anderweitig zu lösen..

PHP Code:
Dim Source "<a class=""fbxWelcomeBoxBlock _8o _8s lfloat"" href=""http://www.facebook.com/johann.goldbaum"" aria-hidden=""true"" tabindex=""-1"">"
Dim UserName As String Split(source"fbxWelcomeBoxBlock _8o _8s lfloat")(1)
UserName Split(UserName"facebook.com/")(1)
UserName Split(UserName"""")(0)

Source "<script>function envFlush(a){function b(c){for(var d in a)c[d]=a[d];}if(window.requireLazy){requireLazy(['Env'],b);}else{Env=window.Env||{};b(Env);}}envFlush({""user"":""100005087773375"",""locale"":"
Dim UserId Split(Source"envFlush({""user"":""")(1)
UserId Split(UserId"""")(0
Mi4uric3 is offline  
Thanks
1 User
Old 02/04/2013, 14:24   #4
 
roteisenklinge's Avatar
 
elite*gold: 0
Join Date: Apr 2009
Posts: 1,071
Received Thanks: 164
Quote:
Originally Posted by Mi4uric3 View Post
Ist es wichtig, dass du dafür RegEx benutzt?
Visual Basic.Net bietet da nämlich gute Funktionen, um das anderweitig zu lösen..

PHP Code:
Dim Source "<a class=""fbxWelcomeBoxBlock _8o _8s lfloat"" href=""http://www.facebook.com/johann.goldbaum"" aria-hidden=""true"" tabindex=""-1"">"
Dim UserName As String Split(source"fbxWelcomeBoxBlock _8o _8s lfloat")(1)
UserName Split(UserName"facebook.com/")(1)
UserName Split(UserName"""")(0)

Source "<script>function envFlush(a){function b(c){for(var d in a)c[d]=a[d];}if(window.requireLazy){requireLazy(['Env'],b);}else{Env=window.Env||{};b(Env);}}envFlush({""user"":""100005087773375"",""locale"":"
Dim UserId Split(Source"envFlush({""user"":""")(1)
UserId Split(UserId"""")(0
hey,
naja habe bis jetzt immer Regex benutzt, macht der Gewohnheit
Danke

Habs hiermit versucht
Dim lsdPattern As String = ("(?<=<a class=""fbxWelcomeBoxBlock _8o _8s lfloat"" href=""http:\/\/www.facebook.com\/).*?(?="")")
roteisenklinge is offline  
Old 02/12/2013, 15:12   #5
 
elite*gold: 50
Join Date: Oct 2005
Posts: 29
Received Thanks: 7
Warum RegEx? Warum Split? Was passiert denn wohl wenn sich die CSS Klasse mal ändert?

Um es etwas langlebiger zu gestalten rate ich zu string.Split und string.IndexOf Methoden. Beispielsweise

Code:
string href = "<a class=\"fbxWelcomeBoxBlock _8o _8s lfloat\" href=\"http://www.facebook.com/johann.goldbaum\" aria-hidden=\"true\" tabindex=\"-1\">";
int usernameStartIndex = href.IndexOf(".com/") + 5;
int usernameLength = href.IndexOf('"', usernameStartIndex) - usernameStartIndex;
string username = href.Substring(usernameStartIndex, usernameLength);

Console.WriteLine(username);
Console.ReadLine();
LG
Popicker is offline  
Old 02/12/2013, 17:15   #6
 
Schlüsselbein's Avatar
 
elite*gold: 0
Join Date: Feb 2013
Posts: 1,137
Received Thanks: 869
Sind ja alles schöne Workarounds, aber für so einen Fall würde ich mir lieber einen HTML-Parser schnappen.
Damit bekommt man dann schonmal ohne rumhantieren mit irgendwelchen String-Funktionen an folgendes:

Daraus sollte es dann wohl recht einfach sein, den hinteren Teil zu bekommen.
Schlüsselbein is offline  
Old 02/12/2013, 17:57   #7
 
tolio's Avatar
 
elite*gold: 2932
The Black Market: 169/1/0
Join Date: Oct 2009
Posts: 6,966
Received Thanks: 1,097
und was macht ein html parser? genau er nutzt string, funktionen in allen farben in formen

da kann es nicht schaden sowas auch mal er hand zu probieren

ich persöhnlich würde mich bei sowas einfachem und schnellem nie auf fremdkomponeten verlassen
tolio is offline  
Old 02/12/2013, 18:04   #8
 
elite*gold: 50
Join Date: Oct 2005
Posts: 29
Received Thanks: 7
Einen HTML Parser für ein Html Anchor zu nutzen halte ich für overkill, zu mal du nicht drum rum kommst string funktionen zu nutzen. Der Html Parser macht nichts anderes. Von daher würde ich eher einen Html Parser eher als Workaround bezeichnen. Das man diese Funktionalität in eine Klasse hüllen kann macht natürlich Sinn, wenn es dir darum gehen sollte.

Ein Html Parser liest Html Code ein und wandelt ihn in Objekte, bzw. befüllt Objekte mit den Informationen zum leichteren Zugriff.
Popicker is offline  
Old 02/12/2013, 18:22   #9
 
Schlüsselbein's Avatar
 
elite*gold: 0
Join Date: Feb 2013
Posts: 1,137
Received Thanks: 869
Deswegen wozu das Rad neu erfinden. Das bisschen Overhead sollte hier sicherlich nicht ins Gewicht fallen. Der Flaschenhals ist sowieso der Webrequest.
Quote:
da kann es nicht schaden sowas auch mal er hand zu probieren
Stimme ich dir schon zu, aber sich auch mal mit einem der gängigen Parser zu befassen, kann auch nicht schaden.
Schlüsselbein is offline  
Old 02/12/2013, 21:29   #10
 
elite*gold: 50
Join Date: Oct 2005
Posts: 29
Received Thanks: 7
Das sehe ich ehrlich gesagt etwas anders, aber jeder soll ja auch seine Art haben.
Ich würde es wohl so lösen wie von mir Vorgeschlagen. Einen HTML Parser zu nutzen ist für mich völliger Overkill. Man darf nicht vergessen, dass man damit auch die Komplette DLL an Board hat.

Das Rad wurde auch nicht neu erfunden. Es macht in meinen Augen wenig Sinn einen kompletten Parser zu benutzen um aus einem so kurzem String eine kleine Information zu holen. Zumal du dennoch mit String Methoden arbeiten müsstest um an die Information zu kommen.
Popicker is offline  
Reply


Similar Threads Similar Threads
RegEx Pattern
09/23/2012 - General Coding - 2 Replies
Wäre jemand mal so nett mir einen funktionierenden RegEx Pattern zu geben, um das rotmarkierte rauszufilten? Ich kenn mich nicht besonders gut damit aus und bekomms einfach nicht gebacken..
Kleines Problem mit RegEx
09/16/2012 - .NET Languages - 4 Replies
Hey Leute ich habe folgenden Code: System.Text.RegularExpressions.Regex(RichTextBox1. Text, "Ha.*s", RegexOptions.IgnoreCase) Die Fehlermeldung lautet jetzt: "Regex ist ein Typ in RegularExpressions und kann nicht als Ausdruck verwendet werden." Könnt ihr mir mal helfen? Ich glaub ich steh grade voll auf dem Schlauch...
[C#]RegEx Problem
11/29/2011 - .NET Languages - 4 Replies
Also ich habe ein Problem, hab ein Patter erstellt: rf_token: '(\w.*)' Nach RegexBuddy gibt es 2 Machtes und in der zweitem Match ist richtige Wert. Aber mit diesem Code bekomme ich Wert nicht wieso wo ist Fehler? string re1 = "rf_token: '(\\w.*)'"; // Variable Name 1 Regex r = new Regex(re1, RegexOptions.IgnoreCase | RegexOptions.Singleline); Match m = r.Match(Winhttp.Body); String var1 = m.Groups.ToString();
Gacha pattern + the problem in GCph forums...
03/17/2011 - Grand Chase Philippines - 38 Replies
gacha pattern tip: but P1000 load release it and when your scrolls goes to 1/2 - 3/4 activate auto-release mode... it may easy to have gacha items... it works... the problem in GCph forums: why i'm always banned there? is there anything wrong? wla naman akong nilalabag na forum rules eh... iwant to join comic strip contests pero ban na agad ako... why?... is because of flagging?... why?... need come comments for you guys... kamsa hamnida...
[C#] Problem mit Regex
07/11/2010 - .NET Languages - 2 Replies
Huhu, Ich hab da ein kleines Problem was ich irgendwie nicht schaffe zu lösen.. Also ich hab folgenden Source: public List<string> GetHtmlLinks(string html) { string linkPattern = "<a href=\"(.*?)\">(.*?)</a>"; MatchCollection linkMatches = Regex.Matches(html, linkPattern, RegexOptions.Singleline);



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


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

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