AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

wie benutze ich regular expressions?

Ein Thema von nimmersattXD · begonnen am 1. Jun 2009 · letzter Beitrag vom 9. Jun 2009
Antwort Antwort
Seite 6 von 6   « Erste     456   
nat

Registriert seit: 10. Nov 2005
216 Beiträge
 
RAD-Studio 2009 Pro
 
#51

Re: wie benutze ich regular expressions?

  Alt 8. Jun 2009, 16:10
%20 ist sicher, das häufigste vorkommen in diesem format, trotzdem können aber noch
andere zeichen mit % zeichen encodiert sein. %00 bis %FF kann vorkommen (theoretisch).
ich würde das etwas variabler machen (so wie ich das im letzten post geschrieben habe).
damit kannste alle zeichen umwandeln. dein stringreplace kennt nun nur %20.

und zu den jsp-dateien:
dann mußt du deinen filename weiter filtern, dass halt keine <%= und %> zeichen
drin vorkommen dürfen. wieder entweder per regex oder per eigener kleinen routine.
ist doch ne gute übung
  Mit Zitat antworten Zitat
Benutzerbild von nimmersattXD
nimmersattXD

Registriert seit: 1. Jun 2009
Ort: Sangerhausen
65 Beiträge
 
Delphi 7 Personal
 
#52

Re: wie benutze ich regular expressions?

  Alt 8. Jun 2009, 16:13
joa das stimmt scho mit der uebung, aber am montag fehlt mir irgendwie immer die motivation
Sorry an alle fuer die es schwerfaellt meine texte zu lesen! ich bin im moment in england und hab nur eine englische tastatur, also leider keine umlaute usw.!

http://nimmersatt-xd.mybrute.com
  Mit Zitat antworten Zitat
nat

Registriert seit: 10. Nov 2005
216 Beiträge
 
RAD-Studio 2009 Pro
 
#53

Re: wie benutze ich regular expressions?

  Alt 8. Jun 2009, 16:28
ob deine motivation steigt, wenn dein programm wegen so einer "schlamperei" irgerdwann auf einmal nicht mehr geht.
ich weiß ja nicht... bin der meinung wenn, dann richtig
  Mit Zitat antworten Zitat
Benutzerbild von nimmersattXD
nimmersattXD

Registriert seit: 1. Jun 2009
Ort: Sangerhausen
65 Beiträge
 
Delphi 7 Personal
 
#54

Re: wie benutze ich regular expressions?

  Alt 8. Jun 2009, 16:41
naja deswegen geb ich ja auch noch nich auf, eigentlich is das programm ja soweit schon fertig, aba ich wills halt verbessern und so!! kennst du das nich das montag ein arschloch is
Sorry an alle fuer die es schwerfaellt meine texte zu lesen! ich bin im moment in england und hab nur eine englische tastatur, also leider keine umlaute usw.!

http://nimmersatt-xd.mybrute.com
  Mit Zitat antworten Zitat
nat

Registriert seit: 10. Nov 2005
216 Beiträge
 
RAD-Studio 2009 Pro
 
#55

Re: wie benutze ich regular expressions?

  Alt 8. Jun 2009, 17:33
hmm, eigentlich nicht
ich sehe sowas immer als herausforderung.
wenn man es dann geschaft hat und die routine läuft
is die freude um so größer.

mal so aus neugier, wozu soll das prog eigentlich gut sein?
  Mit Zitat antworten Zitat
Benutzerbild von nimmersattXD
nimmersattXD

Registriert seit: 1. Jun 2009
Ort: Sangerhausen
65 Beiträge
 
Delphi 7 Personal
 
#56

Re: wie benutze ich regular expressions?

  Alt 8. Jun 2009, 17:52
es soll ungenutzte bilder filtern, also im mom laeuft es so:

als erstes werden alle bilddateien aus den ordnern in ein listbox aufgelistet, dann macht man das gleiche mit den seiten (html,htmlm, jsp) gleichzeitig werden die urls der bilder extrahiert (das was ich die ganze zeit mache) und zum schluss vergleiche ich die beiden listboxen un splitte in zwei neue boxes auf, eine fuer genutzte bilder und eine fuer ungenutzte

mein chref hat mir gesagt ich wuerde mit regex, hashtabellen und threading das programm schneller machen, leider hatte ich von allem noch nichts gehoert und da er nicht mit delphi arbeitet erarbeite ich mir das jetzt selbst und mit deiner hilfe ;D hatte also erstmal mein angefangen mien prog mit regex umzubauen, wenn das richtig funst dann will ich die url der bilder in hashtabellen speichern und zum schluss mal sehn ... bin ja nur noch drei wochen hier und hab noch andere aufgaben nebenher ... das mit dem programm is ja mehr oder weniger beschaeftigung, die meinem chef vllt hilft die ganzen alten bilder, die in den seiten nicht mehr genutzt werden zu loeschen ...
Sorry an alle fuer die es schwerfaellt meine texte zu lesen! ich bin im moment in england und hab nur eine englische tastatur, also leider keine umlaute usw.!

http://nimmersatt-xd.mybrute.com
  Mit Zitat antworten Zitat
Benutzerbild von nimmersattXD
nimmersattXD

Registriert seit: 1. Jun 2009
Ort: Sangerhausen
65 Beiträge
 
Delphi 7 Personal
 
#57

Re: wie benutze ich regular expressions?

  Alt 9. Jun 2009, 11:12
so ich hab mir jetzt ne funktion gebastelt, leider funktioniert sie nicht so wie sie sollte: also im gunde genommen passiert gar nichts, keine fehlermeldung und bei der ausgabe sieht der string genauso aus wie bei der eingabe aba so wie ich dich langsam einschaetze, findest du meinen fehler gleich !


Delphi-Quellcode:

function ReplaceHex(url: string):string;
var idx,code: integer;
    hex: string;
begin
  idx:=0;
  result:=url;
  repeat
    idx := PosEx('%',url,idx+1);
    if idx>0 then
      begin
      hex:=copy(url,idx+1,2);
      if TryStrToInt('$'+hex,code) then
        begin
        hex:= copy(url,idx,3);
        result:=StringReplace(url,hex,chr(code),[rfReplaceAll]);
        end;
      end;
  until idx = 0;

end;
Sorry an alle fuer die es schwerfaellt meine texte zu lesen! ich bin im moment in england und hab nur eine englische tastatur, also leider keine umlaute usw.!

http://nimmersatt-xd.mybrute.com
  Mit Zitat antworten Zitat
nat

Registriert seit: 10. Nov 2005
216 Beiträge
 
RAD-Studio 2009 Pro
 
#58

Re: wie benutze ich regular expressions?

  Alt 9. Jun 2009, 13:32
result:=StringReplace(url,hex,chr(code),[rfReplaceAll]); das problem ist, dass du hier immer in dem ursprungs-string ersetzt.
wenn mehr als ein %xx zeichen drin ist, dann wird nur das letzt ersetzen "übernommen"
beispiel: "hallo%20welt%A0bla"

nach dem 1. ersetzen: "hallo welt%A0bla"
nach dem 2. ersetzen: "hallo%20welt bla"

du mußt immer wieder in deinem result string arbeiten.
allerdings finde ich es nicht so günstig mit strinreplace zu arbeiten
(grade wenn es dir auf geschwindigkeit ankommt). du gehst doch deinen
string schon mit pos/posex durch... dann bau dir den string doch selber
zusammen. du köntest z.B. einfach in der schleife sowas in der art machen
Delphi-Quellcode:
result[idx] := Chr(code); //überschreibt das % zeichen mit dem echten zeichen
Delete(result, idx, 2); //löscht die beiden zahlen hinter dem % zeichen
ist nur ein beispiel. kann man auch anders (und schneller) machen, aber das ist
glaub ich eine lösung die am einfachsten zu verstehen ist.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 6 von 6   « Erste     456   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz