RegS?Ex<br />unendliche Möglichkeiten zum Analysieren, Scrapenetc.<br />1<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von:...
What‘sitgoodfor…?<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />2<br />http://www.xkcd.com/208/<br />
Johan Hülsen<br />Projektmanager @ TRG – The Reach Group<br />Analyse<br />Datenmanagement<br />IT-Betreuung<br />Kein Pro...
Ein Beispiel zum Einstieg | I<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />4<br />
Suchen: t*(<.*?>(?!http://).*</.*?>r|</?loc>|</?.*> ?r*)<br />Ersetzen: nichts<br />Es bleiben zwei leere Zeilen (erste + ...
Unsere Regex: t*<br />Es kann ein Tab da stehen<br />Slow Motion! | #1<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Jo...
Unsere Regex: <.*?>(?!http://).*</.*?>r<br />Irgendwas steht zwischen ‚<‘ und ‚>‘<br />danach kommt was (aber nicht http:/...
Unsere Regex: </?loc><br /><loc> oder </loc><br />Slow Motion | #3<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan ...
</?.*> ?r*<br />Ein öffnender oder schließender Tag<br />Gefolgt von einem Leerzeichen (oder auch nicht)<br />Gefolgt von ...
#1 (#2 | #3 | #4)<br />t*	(	<.*?>(?!http://).*</.*?>r	|	</?loc>	|	</?.*> ?r*	)<br />Die Pipe ‚|‘ steht für ein oder<br />D...
Agenda<br />11<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />
Uralt<br />Grundlagen 1956 aus der Medizin<br />Suchen und Ersetzen<br />Wildcards on Steroids<br />Alles, was durch ein M...
Search andReplace<br />Daten umformatieren<br />Listen zu Tabellen<br />URL-/HTML-/Text- Muster erkennen und ersetzen<br /...
Agenda<br />14<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />
Basics | Brauchbare Hilfe<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />15<br />Ganz groß: http://www...
Vernünftiger Text-Editor<br />Textwrangler (Mac)<br />Notepad++ (Windows)<br />VIM (Unix/Terminal)<br />Validatoren hilfre...
Zeichen gruppieren<br />[a-z] -> [a-h] geht natürlich auch<br />[A-Z] -> [A-H] geht natürlich auch<br />[0-9] -> [1-5] geh...
[a-z] = 1<br />[]+ = >1<br />[]? = 1 oder 0<br />[]* = 0, >1 <br />[]{3} = 3<br />[]{3,5} = 3, 4, 5<br />+ und * lassen si...
^ -> Zeilenanfang<br />$ -> Zeilenende<br />| -> oder<br /> -> Befehlszeichen die Sonderbedeutung nehmen<br />Anker und An...
Agenda<br />20<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />
Leerzeilen löschen<br />r+ durch r Leerzeilen löschen<br />Datum umformatieren<br />01.02.1900 durch 1900-02-01<br />(d{2...
Prinzipiell alles filterbar<br />Referrer<br />Browsertypen<br />…<br />Keywords<br />Google Analytics<br />TRG | SEO CAMP...
(bhs|sbh)|(har[dt]|soft)[-s]?core|(male|fem)[-s]?(joy|dom)|(oben|unten)[s ]+ohne|(popo|^po$)|(tabu|hemmungs)los|(three|fou...
Agenda<br />24<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />
Nächste SlideShare
Wird geladen in …5
×

RegS?ex — SEO-Campixx 2011

1.533 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie
3 Kommentare
3 Gefällt mir
Statistik
Notizen
Keine Downloads
Aufrufe
Aufrufe insgesamt
1.533
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
178
Aktionen
Geteilt
0
Downloads
0
Kommentare
3
Gefällt mir
3
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

RegS?ex — SEO-Campixx 2011

  1. 1. RegS?Ex<br />unendliche Möglichkeiten zum Analysieren, Scrapenetc.<br />1<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />
  2. 2. What‘sitgoodfor…?<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />2<br />http://www.xkcd.com/208/<br />
  3. 3. Johan Hülsen<br />Projektmanager @ TRG – The Reach Group<br />Analyse<br />Datenmanagement<br />IT-Betreuung<br />Kein Programmierer<br />Ein bisschen Excel<br />Twitter.com/johanstormarn<br />Facebook.com/johan.huelsen<br />Xing.com/profile/Johan_vHuelsen<br />Skype: Johanstormarn<br />Wer spricht?<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />3<br />
  4. 4. Ein Beispiel zum Einstieg | I<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />4<br />
  5. 5. Suchen: t*(<.*?>(?!http://).*</.*?>r|</?loc>|</?.*> ?r*)<br />Ersetzen: nichts<br />Es bleiben zwei leere Zeilen (erste + letzte) und alle URLs<br />Eine RegEx später:<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />5<br />
  6. 6. Unsere Regex: t*<br />Es kann ein Tab da stehen<br />Slow Motion! | #1<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />6<br /><url> <br /> <loc>http://blogs-optimieren.de/</loc> <br /> <lastmod>2011-03-10T09:32:43+00:00</lastmod> <br /> <changefreq>daily</changefreq> <br /> <priority>1.0</priority> <br /> </url> <br /> <url> …<br />
  7. 7. Unsere Regex: <.*?>(?!http://).*</.*?>r<br />Irgendwas steht zwischen ‚<‘ und ‚>‘<br />danach kommt was (aber nicht http://)<br />und ein schließender Tag gefolgt von einem Zeilenumbruch<br />Slow Motion | #2<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />7<br /><url> <br /><loc>http://blogs-optimieren.de/</loc> <br /><lastmod>2011-03-10T09:32:43+00:00</lastmod> <br /><changefreq>daily</changefreq> <br /><priority>1.0</priority> <br /></url> <br /><url> …<br />
  8. 8. Unsere Regex: </?loc><br /><loc> oder </loc><br />Slow Motion | #3<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />8<br /><url> <br /><loc>http://blogs-optimieren.de/</loc> <br /></url> <br /><url> …<br />
  9. 9. </?.*> ?r*<br />Ein öffnender oder schließender Tag<br />Gefolgt von einem Leerzeichen (oder auch nicht)<br />Gefolgt von einem Zeilenumbruch (oder auch nicht)<br />Slow Motion | #4<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />9<br /><url> <br />http://blogs-optimieren.de/<br /></url> <br /><url> …<br />
  10. 10. #1 (#2 | #3 | #4)<br />t* ( <.*?>(?!http://).*</.*?>r | </?loc> | </?.*> ?r* )<br />Die Pipe ‚|‘ steht für ein oder<br />Die Klammern sorgen für die Reihenfolge<br />Slow Motion | DONE<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />10<br />http://blogs-optimieren.de/<br />
  11. 11. Agenda<br />11<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />
  12. 12. Uralt<br />Grundlagen 1956 aus der Medizin<br />Suchen und Ersetzen<br />Wildcards on Steroids<br />Alles, was durch ein Muster zu beschreiben ist, kann mit RegEx ausgelesen und ersetzt werden<br />Gefühlte 1.000 Dialekte<br />(mit PREG/PCRE kann man aber eigentlich nicht falsch liegen)<br />Was ist RegS?Ex<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />12<br />
  13. 13. Search andReplace<br />Daten umformatieren<br />Listen zu Tabellen<br />URL-/HTML-/Text- Muster erkennen und ersetzen<br />Search andDestroy<br />Müllabfuhr<br />Search…<br />Validierung von Eingaben<br />Nutzernamen<br />Passwörter (X-Zeichen nach Schema XYZ)<br />Telefonnummern<br />Mail-Adressen<br />URLs<br />Never trust a user<br />Anwendungsfälle<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />13<br />
  14. 14. Agenda<br />14<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />
  15. 15. Basics | Brauchbare Hilfe<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />15<br />Ganz groß: http://www.slideshare.net/andreizm/andreis-regex-clinic<br />HTML und RegEx werden niemals echte Freunde: http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454<br />
  16. 16. Vernünftiger Text-Editor<br />Textwrangler (Mac)<br />Notepad++ (Windows)<br />VIM (Unix/Terminal)<br />Validatoren hilfreich für Einsteiger<br />Einfach mal Googlen… Validator +Regex<br />Reggy (http://reggyapp.com/) OSX-Tool<br />Cheatsheets<br />http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet/<br />Gibtaber nocheinigeandere<br />Terminal…<br />Basics | Tools<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />16<br />
  17. 17. Zeichen gruppieren<br />[a-z] -> [a-h] geht natürlich auch<br />[A-Z] -> [A-H] geht natürlich auch<br />[0-9] -> [1-5] geht natürlich auch<br />[ ;.,:!?]<br />Shortcuts für Zeichenklassen<br />s -> whitespaces<br />S -> kein Whitespace<br />d -> 0-9<br />D -> kein 0-9<br />w -> Wort<br />W -> kein Wort<br />Basics | Zeichenklassen<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />17<br />
  18. 18. [a-z] = 1<br />[]+ = >1<br />[]? = 1 oder 0<br />[]* = 0, >1 <br />[]{3} = 3<br />[]{3,5} = 3, 4, 5<br />+ und * lassen sich mit einem ? Von gierig auf genügsam schalten<br />Basics | Quantoren<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />18<br />
  19. 19. ^ -> Zeilenanfang<br />$ -> Zeilenende<br />| -> oder<br /> -> Befehlszeichen die Sonderbedeutung nehmen<br />Anker und Anderes<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />19<br />
  20. 20. Agenda<br />20<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />
  21. 21. Leerzeilen löschen<br />r+ durch r Leerzeilen löschen<br />Datum umformatieren<br />01.02.1900 durch 1900-02-01<br />(d{2}).(d{2}).(d{4}) durch 3-2-1<br />HTML Tags loswerden<br /><.+?> oder <[^>]+> je nach Engine<br />Prinzipiell ist HTML nicht durch RegEx brauchbar zu parsen<br />Bestimmte Dateien aus der Liste löschen<br />.*.(jpg|jpeg|css|js)<br />Grep „Google|Slurp|Bing“<br />Was braucht man sonst andauernd?<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />21<br />
  22. 22. Prinzipiell alles filterbar<br />Referrer<br />Browsertypen<br />…<br />Keywords<br />Google Analytics<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />22<br />
  23. 23. (bhs|sbh)|(har[dt]|soft)[-s]?core|(male|fem)[-s]?(joy|dom)|(oben|unten)[s ]+ohne|(popo|^po$)|(tabu|hemmungs)los|(three|four|d)some|(ver|dreck)sau|(wank|red|tim|porn)[s-]?tube|(x|call)(video|girl)|[aäe]+rsch|[kc]lit|[sf]uck|[v]i(chs|x)|[vf][oeö]+geln|[vf]otze|d+yo|abuse|ad[au]lt|am+a+t+[öeu]+r|anal(?![yblgn])|ba(nged|be|rely)|bangb|be(haart|sam)|bl(ow[- ]?jo[bp]|asen)|bo+(ndage|b)|bordell|br[üue]+st|breast|buk+ake|bum?s(en|ig)|butt|cam(s|el[-s]?toe)|catfight|chick|cleavage|closeup|creampie|cu(nt|m|ckold)|de+pthroat|dil+do|dog+(y|ie)|doktor[- ]?spiele|domina|dp|dreier|eb+o+n+y|eichel|eja[kc]ul|entjungfer|ere[kc]t|erot[hi]+([gck]|sch)|f[au]ndorado|facesitting|facial|fetisc?h|feucht|fi(e?ken|ck)|finger(ing|n)|fisti|fkk|g[s-]?(punkt|spot)|gangbang|geil|geschlechts(verkehr|akt)|girls?(friend|s[-s]?gone[-s]?wild)|ggw|gloryhole|grann(y|ies)|h[ea]nt[ae][iy]|hairy|hardcore|hure|in[zc](est|ucht)|interracial|intim|joyclub|kam+a[zs]utra|[kc]oitus|la[bp]+danc|ladyboy|latex|latina|le(s[bp]|cken)|livechat|lo(lita|vetoy)|luder|m[öoe]+p?se|mast[eurbi]+(ren|ate|tion)|mature|milf|muschi|n[iy](lon|mph[oe])|nac?k(t|ig|ed)|naughty|nip+[el]{2,}|nud(e|is?t)|nutte|onanieren|org?(asm|y|al)|p[0o]rn|p[äae]+d(oph|[äae]+rast)|p[ro]+n|pant(y|ies)|pe(nis|rvers|t+ing)|pee|penetrat|penthouse|pi(ss|nkel)|pim+(el|pern)|playboy|pop+en|potenz|p[r0o]+n|privat|prostitu|puff|puss[iy]|rap(ing|ed)|ras(iert|ur|ieren)|rimjob|rosette|sch(lampe|w[aä]nz)|schwul|seksfilmpjes|selbstbefr|sex|skirt|sklav(in|e)|slip|span+(er|ked)|sperma|squirt|str(i[pb]|a[bp]s)|superheroines|swinger|tanga|teen(s|i|y|pics|cam)|tit+[yies]|trans|vagina|vibrator|vorhaut|voy[euoöä]+r|wet<br />RegEx? RegSex!<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />23<br />
  24. 24. Agenda<br />24<br />TRG | SEO CAMPIXX BERLIN 2011| Vortrag von: Johan Hülsen<br />

×