Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Perl 6 Regex und Grammars

1.041 Aufrufe

Veröffentlicht am

this talk should you prepare you for the new syntax, so you can write Perl 6 today

  • Gehören Sie zu den Ersten, denen das gefällt!

Perl 6 Regex und Grammars

  1. 1. Perl 6 Regex
  2. 2. Perl 6 Data Structures
  3. 3. Schlaraffenland
  4. 4. Heiliger Gral
  5. 5. Schönheit Und Struktur
  6. 6. Voll Gepackt
  7. 7. Voll Gepackt
  8. 8. Vorsicht Denglisch !
  9. 9. Voll Gepackt
  10. 10. Keine Sorge:Perl5
  11. 11. Modifikator am Anfang m :P5 //
  12. 12. Alles wie bei Mama
  13. 13. Papa saysWe put the ”regular”back into expression.
  14. 14. Was bleibt ?
  15. 15. Was bleibt ? Capturing: (…) Escape: Modifikatoren: i, g Quantifier: *, +, und ? Alternativen: | match Var.: $/min. matching Suffix: ??, *?, +?
  16. 16. Vorsicht Falle
  17. 17. Vorsicht Falle . /smex [-] //
  18. 18. Any Char .
  19. 19. Any CharN ist der alte .
  20. 20. Any CharN ist der alte .Gegenteil von n
  21. 21. Any CharN ist der neue .Gegenteil von n seit 5.12
  22. 22. Any Char N ist der alte .Punkt meint ”any char”
  23. 23. Any Char
  24. 24. Any Char
  25. 25. Any Char
  26. 26. Kein ”multi line mode” kein /.../s und /.../m
  27. 27. Kein ”multi line mode” kein /.../s und /.../m ^ ^^
  28. 28. Kein ”multi line mode” kein /.../s und /.../m ^ ^^ $ $$
  29. 29. Leerzeichenimmer noch s
  30. 30. Leerzeichenimmer noch s h | v
  31. 31. Leerzeichen immer noch s h | vhorizontal | vertikal
  32. 32. Leerzeichen immer noch s h | vhorizontal = leer + tabs
  33. 33. Oder oder oder? | ||
  34. 34. Oder oder oder? | || sub | substr
  35. 35. Oder oder oder? | || sub | substr substr gewinnt
  36. 36. Oder oder oder? | || sub || substr
  37. 37. Oder oder oder? | || sub || substr sub gewinnt
  38. 38. Regex Metachar ^ ^^ $ $$ | || & . ** % %% := # (+Klammern)
  39. 39. Regex Metachar ^ ^^ $ $$ | || & . ** % %% := # (+Klammern)
  40. 40. Regex Metachar ^ ^^ $ $$ | || & . ** % %% := # (+Klammern)
  41. 41. Regex Metachar ^ ^^ $ $$ | || & . ** % %% := # (+Klammern)
  42. 42. Quantifikatoren? + * ** **? ** % %%
  43. 43. Quantifikator **243 ~~ /d ** 2/
  44. 44. Quantifikator **243 ~~ /d ** 2/ default to *
  45. 45. Quantifikator ** 243 ~~ /d ** 2/243 ~~ /d ** 2..4/
  46. 46. Quantifikator %3,4,5 ~~ /d+ % ,/
  47. 47. Quantifikator %%3,4,5 ~~ /d+ % ,/3,4,5, ~~ /d+ %% ,/
  48. 48. Kein ”eval mode” P5: s/.../.../e
  49. 49. Kein ”eval mode” P5: s/.../.../e P6: s/.../{...}/
  50. 50. Kein ”eval mode” P5: s/.../.../e P6: s/.../{...}/ s[...] = {…};
  51. 51. Kein ”eval mode” P5: s/.../.../ee P6: s/.../{ eval ...}/ s[...] = eval {…};
  52. 52. Perl 6 Regex kein /.../x
  53. 53. Perl 6 Regex kein /.../x ist Standard
  54. 54. Eigene Zeichenklasse P5: [a-m]
  55. 55. Eigene Zeichenklasse P5: [a-m] P6: <[a m]>]
  56. 56. Bereiche Wie Überall P5: [a-m] P6: <[a..m]>]
  57. 57. Klammern in RegexZeichenklasse <[..]>] Block {..}
  58. 58. Klammern in RegexTeilregex (..), [..], <...> Zeichenklasse <[..]>] Block {..}
  59. 59. Klammern in Regex (?:pattern) => [pattern](?<key>pattern) => $<key> = <pattern> (?{code}) => {code}
  60. 60. Horror Vacui
  61. 61. Horror Vacui kein //
  62. 62. Horror Vacui kein // / <prior> /
  63. 63. Horror Vacui kein // / <prior> // / aka / <?> /
  64. 64. Teilfunde $1
  65. 65. Teilfunde $1 => $0
  66. 66. Teilfunde $1 => $0$0 => $*EXECUTABLE_NAME
  67. 67. Teilfunde $1 => $0kein 1 .. 9
  68. 68. Teilfunde $1 => $0 kein:L...E, U...E, Q...E
  69. 69. Perl 6 Regex $1 => $0 { lc …}, ...
  70. 70. Teilfunde $1 => $0 $0 ..
  71. 71. Teilfunde $1 => $0 $0 ..
  72. 72. Teilfunde $1 => $0 $0 .. $15
  73. 73. Teilfunde $1 => $0@() == $0 ..
  74. 74. Teilfunde $1 => $0@() == $0 .. @()[1][2]
  75. 75. Teilfunde $1 => $0 ( () (…) ) @()[0][1]
  76. 76. Regex Variablen $0 …, @() $/,
  77. 77. Regex Variablen $0 …, @() $/, $/<..>
  78. 78. Regex Variablen $0 …, @() $/, $/<..> $<..>
  79. 79. Regex Variablen $0 …, @() $/, $/<..> $<key> = (...)
  80. 80. Operatoren
  81. 81. Operatoren rx//
  82. 82. Operatoren rx//Warum nicht qr // ?
  83. 83. Operatoren rx//Subsprache, ! Quoting
  84. 84. Operatoren rx//$~MAIN $~Q $~Regex
  85. 85. Operatoren~~ rx//
  86. 86. Operatoren ~~ rx//m// ms// s/// ss/// tr///
  87. 87. Operatoren ~~ rx//m// ms// s/// ss/// tr///match comb subst trans
  88. 88. Operatorenms// ss///
  89. 89. Operatoren ms// ss///m :s // s :ss ///
  90. 90. Operatoren:sigspace :samespace m :s // s :ss ///
  91. 91. OperatorenLeerzeichen trennen Wörter:sigspace :samespace m :s // s :ss ///
  92. 92. Modifikatoren:g
  93. 93. Modifikatoren:g :i :a :m
  94. 94. Modifikatoren:g :i :a :m :ii :aa :mm
  95. 95. Modifikatoren :g :i :a :m:x(n) :nth(n)
  96. 96. Modifikatoren :g :i :a :m:x(n) :nth(n) :c(n) :p(n)
  97. 97. Modifikatoren :g :i :a :m:x(n) :nth(n) :c(n) :p(n) :r :ov :ex :rw
  98. 98. grammar Methoden regex {..} token {..} rule {..}
  99. 99. grammar Methoden regex {..} token {..} regex :ratchet {}rule {..} regex :ratchet :sigspace {}
  100. 100. grammar Methodengrammar webpage { rule TOP {<head> <body>} rule head {<meta>|<title>} … token title { <?after <title> .* <?before </title> }
  101. 101. grammar Methodengrammar webpage { rule TOP {<head> <body>} rule head {<meta>|<title>} … token title { <?after <title> .* <?before </title> } $/<head><title>
  102. 102. grammar sind Klassen $~MAIN $~Q $~Regex
  103. 103. What I Doperlfoundation.org/ perl6/index.cgi? perl_6_tablets
  104. 104. Thank You

×