samesch         Sun Dec 16 07:45:45 2001 EDT

  Modified files:              
    /phpdoc/de/functions        regex.xml 
  Log:
  Syncing with english rev. 1.34
  
Index: phpdoc/de/functions/regex.xml
diff -u phpdoc/de/functions/regex.xml:1.21 phpdoc/de/functions/regex.xml:1.22
--- phpdoc/de/functions/regex.xml:1.21  Wed Dec 12 15:46:17 2001
+++ phpdoc/de/functions/regex.xml       Sun Dec 16 07:45:45 2001
@@ -1,9 +1,26 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
+ <?xml version="1.0" encoding="iso-8859-1"?>
  <reference id="ref.regex">
   <title>Reguläre Ausdrücke Funktionen (POSIX erweitert)</title>
   <titleabbrev>Regexps</titleabbrev>
 
   <partintro>
+   <note>
+    <para>
+     Bei Verwendung der <link linkend="ref.pcre">PCRE
+     Funktionen</link> unterstützt PHP auch Reguläre Ausdrücke mit
+     einer zu Perl kompatiblen Syntax. Diese Funktionen unterstützen
+     non-greedy Matching, Assertions, bedingte Subpatterns und viele
+     andere Merkmale, die von der POSIX-erweiterten Syntax regulärer
+     Ausdrücke nicht unterstützt werden.
+    </para>
+   </note>
+   <warning>
+    <para>
+     Diese Funktionen regulärer Ausdrücke sind im Gegensatz zu den
+     <link linkend="ref.pcre">PCRE Funktionen</link> nicht
+     binary-safe.
+    </para>
+   </warning>
    <para>
     Reguläre Ausdrücke werden für komplexe Manipulationen an
     Zeichenketten mit PHP verwendet. Folgende Funktionen unterstützen
@@ -35,24 +52,22 @@
     PHP-Distribution in den Regex man pages.  Da sie im manpage-Fomat
     vorliegt, sollten Sie einen Befehl der Art <command> man
     /usr/local/src/regex/regex.7</command> verwenden, um sie zu lesen.
-    
-    <!-- Should add discussion of PCRE functions here. -->
-
    </para>
    <para>
     <example>
      <title>Beispiele regulärer Ausdrücke</title>
      <programlisting role="php">
-ereg (&quot;abc&quot;, $string);            
-/* Gibt true zurück, falls &quot;abc&quot;
+<![CDATA[
+ereg ("abc", $string);            
+/* Gibt true zurück, falls "abc"
    irgendwo in $string gefunden wird. */
 
-ereg (&quot;^abc&quot;, $string);
-/* Gibt true zurück, falls &quot;abc&quot;
+ereg ("^abc", $string);
+/* Gibt true zurück, falls "abc"
    am Anfang von $string gefunden wird. */
 
 ereg ("abc$", $string);
-/* Gibt true zurück, falls &quot;abc&quot;
+/* Gibt true zurück, falls "abc"
    am Ende von $string gefunden wird. */
 
 eregi ("(ozilla.[23]|MSIE.3)", $HTTP_USER_AGENT);  
@@ -63,14 +78,15 @@
 /* Setzt drei Wörter, die durch Leerzeichen getrennt
    sind, in $regs[1], $regs[2] und $regs[3] ein. */
 
-$string = ereg_replace ("^", "&lt;BR&gt;", $string); 
-/* Setzt ein &lt;BR&gt; Tag vor $string. */
- 
-$string = ereg_replace ("$", "&lt;BR&gt;", $string); 
-/* Setzt ein &lt;BR&gt; Tag hinter $string. */
+$string = ereg_replace ("^", "<br />", $string); 
+/* Setzt ein <br /> Tag vor $string. */ 
+
+$string = ereg_replace ("$", "<br />", $string); 
+/* Setzt ein <br /> Tag hinter $string. */
 
 $string = ereg_replace ("\n", "", $string);
 /* Entfernt alle Zeilenumbrüche aus $string. */
+]]>
      </programlisting>
     </example>
    </para>
@@ -85,16 +101,27 @@
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
-    <funcsynopsis>
-     <funcprototype>
-      <funcdef>int <function>ereg</function></funcdef>
-      <paramdef>string <parameter>Suchmuster</parameter></paramdef>
-      <paramdef>string <parameter>Zeichenkette</parameter></paramdef>
-      <paramdef>array 
-       <parameter><optional>regs</optional></parameter>
-      </paramdef>
-     </funcprototype>
-    </funcsynopsis>
+
+    <methodsynopsis>
+     <type>int</type><methodname>ereg</methodname>
+     <methodparam>
+      <type>string</type><parameter>Suchmuster</parameter>
+     </methodparam>
+     <methodparam>
+      <type>string</type><parameter>Zeichenkette</parameter>
+     </methodparam>
+     <methodparam choice="opt">
+      <type>array</type><parameter>regs</parameter>
+     </methodparam>
+    </methodsynopsis>
+
+    <note>
+     <para>
+      Die Funktion <function>preg_match</function>, die eine zu Perl
+      kompatible Syntax regulärer Ausdrücke verwendet, ist häufig die
+      schnellere Alternative zu <function>ereg</function>.
+     </para>
+    </note>
     <simpara>
      Sucht in <parameter>Zeichenkette</parameter> nach
      Übereinstimmungen mit dem regulären Ausdruck, der in
@@ -107,17 +134,18 @@
      aufgerufen wurde, werden die Übereinstimmungen in den Elementen
      des Arrays <parameter>regs</parameter> gespeichert. $regs[1]
      enthält dann die Teilzeichenkette der ersten Klammer, $regs[2]
-     die Teilzeichenkette der zweiten usw. $regs[0] enthält eine Kopie
-     von <parameter>Zeichenkette</parameter>.
+     die Teilzeichenkette der zweiten usw. $regs[0] enthält bei
+     Übereinstimmung mit <parameter>Zeichenkette</parameter> eine
+     Kopie der kompletten <parameter>Zeichenkette</parameter>.
     </simpara>
     <simpara>
-     Wenn <function>ereg</function> irgendwelche Übereinstimmungen
-     findet, wird $regs mit genau zehn Elementen gefüllt, auch wenn es
-     tatsächlich mehr oder weniger Übereinstimmungen mit den
-     eingeklammerten Teilzeichenketten gibt.  Dies wirkt sich aber
-     nicht auf <function>ereg</function>s Fähigkeit aus, mehr
-     übereinstimmende Teilzeichenketten zu finden. Falls keine
-     Übereinstimmungen gefunden werden, wird $regs nicht von
+     Bis (und inklusive) PHP 4.1.0 wird <literal>$regs</literal> mit
+     genau zehn Elementen gefüllt, auch wenn es tatsächlich mehr oder
+     weniger Übereinstimmungen mit den eingeklammerten
+     Teilzeichenketten gibt. Dies wirkt sich aber nicht auf
+     <function>ereg</function>s Fähigkeit aus, mehr übereinstimmende
+     Teilzeichenketten zu finden. Falls keine Übereinstimmungen
+     gefunden werden, wird <literal>$regs</literal> nicht von
      <function>ereg</function> verändert.
     </simpara>
     <simpara>
@@ -135,18 +163,21 @@
      <example>
       <title><function>ereg</function> Beispiel</title>
       <programlisting role="php">
+<![CDATA[
 if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) {
     echo "$regs[3].$regs[2].$regs[1]";
 } else {
     echo "Ungültiges Datumsformat: $date";
 }
+]]>
       </programlisting>
      </example>
     </para>
     <simpara>
      Siehe auch: <function>eregi</function>,
-     <function>ereg_replace</function> und
-     <function>eregi_replace</function>.
+     <function>ereg_replace</function>,
+     <function>eregi_replace</function> und
+     <function>preg_match</function>.
     </simpara>
    </refsect1>
   </refentry>
@@ -158,14 +189,27 @@
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
-    <funcsynopsis>
-     <funcprototype>
-      <funcdef>string <function>ereg_replace</function></funcdef>
-      <paramdef>string <parameter>Suchmuster</parameter></paramdef>
-      <paramdef>string <parameter>Ersatz</parameter></paramdef>
-      <paramdef>string <parameter>Zeichenkette</parameter></paramdef>
-     </funcprototype>
-    </funcsynopsis>
+
+    <methodsynopsis>
+     <type>string</type><methodname>ereg_replace</methodname>
+     <methodparam>
+      <type>string</type><parameter>Suchmuster</parameter>
+     </methodparam>
+     <methodparam>
+      <type>string</type><parameter>Ersatz</parameter>
+     </methodparam>
+     <methodparam>
+      <type>string</type><parameter>Zeichenkette</parameter>
+     </methodparam>
+    </methodsynopsis>
+
+    <note>
+     <para>
+      Die Funktion <function>preg_replace</function>, die eine zu Perl
+      kompatible Syntax regulärer Ausdrücke verwendet, ist häufig die
+      schnellere Alternative zu <function>ereg_replace</function>.
+     </para>
+    </note>
     <simpara>
      Diese Funktion durchsucht <parameter>Zeichenkette</parameter>
      nach Übereinstimmungen mit <parameter>Suchmuster</parameter> und
@@ -199,10 +243,12 @@
      <example>
       <title><function>ereg_replace</function> Beispiel</title>
       <programlisting>
+<![CDATA[
 $string = "Das ist ein Test";
 echo ereg_replace (" ist", " war", $string);
 echo ereg_replace ("( )ist", "\\1war", $string);
 echo ereg_replace ("(( )ist)", "\\2war", $string);
+]]>
       </programlisting>
      </example>
     </para>
@@ -216,7 +262,8 @@
      <example>
       <title><function>ereg_replace</function> Beispiel</title>
       <programlisting>
-&lt;?php
+<![CDATA[
+<?php
 /* Dieses funktioniert nicht wie erwartet. */
 $zahl = 4;
 $zeichenkette = "Diese Zeichenkette hat vier Wörter.";
@@ -229,12 +276,25 @@
 $zeichenkette = ereg_replace('vier', $zahl, $zeichenkette);
 echo $zeichenkette;   /* Output: 'Diese Zeichenkette hat 4 Wörter.' */
 ?>
+]]>
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     <example>
+      <title>Replace URLs with links</title>
+      <programlisting role="php">
+<![CDATA[
+$text = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]",
+                     "<a href=\"\\0\">\\0</a>", $text);
+]]>
       </programlisting>
      </example>
     </para>
     <simpara>
-     Siehe auch: <function>ereg</function>, <function>eregi</function>
-     und <function>eregi_replace</function>.
+     Siehe auch: <function>ereg</function>,
+     <function>eregi</function>, <function>eregi_replace</function>
+     und <function>preg_match</function>.
     </simpara>
    </refsect1>
   </refentry>
@@ -249,20 +309,34 @@
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
-    <funcsynopsis>
-     <funcprototype>
-      <funcdef>int <function>eregi</function></funcdef>
-      <paramdef>string <parameter>Suchmuster</parameter></paramdef>
-      <paramdef>string <parameter>Zeichenkette</parameter></paramdef>
-      <paramdef>array 
-       <parameter><optional>regs</optional></parameter>
-      </paramdef>
-     </funcprototype>
-    </funcsynopsis>
+
+    <methodsynopsis>
+     <type>int</type><methodname>eregi</methodname>
+     <methodparam>
+      <type>string</type><parameter>Suchmuster</parameter>
+     </methodparam>
+     <methodparam>
+      <type>string</type><parameter>Zeichenkette</parameter>
+     </methodparam>
+     <methodparam choice="opt">
+      <type>array</type><parameter>regs</parameter>
+     </methodparam>
+    </methodsynopsis>
+
     <para>
      Diese Funktion entspricht <function>ereg</function> mit dem
      Unterschied, dass sie übereinstimmende Buchstaben nicht nach
      Groß- und Kleinschreibung unterscheidet.
+     <example>
+      <title><function>eregi</function> example</title>
+      <programlisting role="php">
+<![CDATA[
+if (eregi("z", $string)) {
+    echo "'$string' contains a 'z' or 'Z'!";
+}
+]]>
+      </programlisting>
+     </example>
     </para>
     <para>
      Siehe auch: <function>ereg</function>,
@@ -282,14 +356,20 @@
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
-    <funcsynopsis>
-     <funcprototype>
-      <funcdef>string <function>eregi_replace</function></funcdef>
-      <paramdef>string <parameter>Suchmuster</parameter></paramdef>
-      <paramdef>string <parameter>Ersatz</parameter></paramdef>
-      <paramdef>string <parameter>Zeichenkette</parameter></paramdef>
-     </funcprototype>
-    </funcsynopsis>
+
+    <methodsynopsis>
+     <type>string</type><methodname>eregi_replace</methodname>
+     <methodparam>
+      <type>string</type><parameter>Suchmuster</parameter>
+     </methodparam>
+     <methodparam>
+      <type>string</type><parameter>Ersatz</parameter>
+     </methodparam>
+     <methodparam>
+      <type>string</type><parameter>Zeichenkette</parameter>
+     </methodparam>
+    </methodsynopsis>
+
     <para>
      Diese Funktion entspricht <function>ereg_replace</function> mit
      dem Unterschied, dass sie übereinstimmende Buchstaben nicht nach
@@ -312,22 +392,33 @@
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
-    <funcsynopsis>
-     <funcprototype>
-      <funcdef>array <function>split</function></funcdef>
-      <paramdef>string <parameter>Suchmuster</parameter></paramdef>
-      <paramdef>string <parameter>Zeichenkette</parameter></paramdef>
-      <paramdef>int 
-       <parameter><optional>Beschränkung</optional></parameter>
-      </paramdef>
-     </funcprototype>
-    </funcsynopsis>
+
+    <methodsynopsis>
+     <type>array</type><methodname>split</methodname>
+     <methodparam>
+      <type>string</type><parameter>Suchmuster</parameter>
+     </methodparam>
+     <methodparam>
+      <type>string</type><parameter>Zeichenkette</parameter>
+     </methodparam>
+     <methodparam choice="opt">
+      <type>int</type><parameter>Beschränkung</parameter>
+     </methodparam>
+    </methodsynopsis>
+
+    <note>
+     <para>
+      Die Funktion <function>preg_split</function>, die eine zu Perl
+      kompatible Syntax regulärer Ausdrücke verwendet, ist häufig die
+      schnellere Alternative zu <function>split</function>.
+     </para>
+    </note>
     <para>
      Gibt ein Array mit Zeichenketten zurück, die jeweils eine
      Teilzeichenkette von <parameter>Zeichenkette</parameter> sind und
      durch deren Zerlegung an den durch
      <parameter>Suchmuster</parameter> des regulären Ausdrucks
-     bestimmten Stellen entstehen.  Wenn
+     bestimmten Stellen entstehen. Wenn
      <parameter>Beschränkung</parameter> gesetzt wurde, enthält das
      zurückgegebene Array höchstens
      <parameter>Beschränkung</parameter> Elemente, von denen das
@@ -341,20 +432,36 @@
      <example>
       <title><function>split</function> Beispiel</title>
       <programlisting role="php">
-$passwd_list = split (":", $passwd_line, 5);
+<![CDATA[
+list($user,$pass,$uid,$gid,$extra)= split (":", $passwd_line, 5);
+]]>
       </programlisting>
      </example>
     </para>
+    <tip>
+     <simpara>
+      Wenn <parameter>Suchmuster</parameter>
+      <replaceable>n</replaceable> mal vorkommt, enhält das
+      zurückgegebene Array
+      <literal><replaceable>n</replaceable>+1</literal> Elemente.
+      Kommt <parameter>Suchmuster</parameter> zum Beispiel überhaupt
+      nicht vor, wird ein Array mit nur einem Element zurückgegeben.
+      Das gilt natürlich auch, wenn
+      <parameter>Zeichenkette</parameter> leer ist.
+     </simpara>
+    </tip>
     <para>
      Um ein Datum zu analysieren, das durch Schrägstriche, Punkte oder
      Bindestriche getrennt ist:
      <example>
       <title><function>split</function> Beispiel</title>
       <programlisting role="php">
+<![CDATA[
 $datum = "04/30/1973";  // Trennzeichen darf ein Schrägstrich, Punkt
                         // oder Bindestrich sein
 list ($monat, $tag, $jahr) = split ('[/.-]', $datum);
-echo "Monat: $monat; Tag: $tag; Jahr: $jahr&lt;br&gt;\n";
+echo "Monat: $monat; Tag: $tag; Jahr: $jahr<br>\n";
+]]>
       </programlisting>
      </example>
     </para>
@@ -407,16 +514,20 @@
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
-    <funcsynopsis>
-     <funcprototype>
-      <funcdef>array <function>spliti</function></funcdef>
-      <paramdef>string <parameter>Suchmuster</parameter></paramdef>
-      <paramdef>string <parameter>Zeichenkette</parameter></paramdef>
-      <paramdef>int 
-       <parameter><optional>Beschränkung</optional></parameter>
-      </paramdef>
-     </funcprototype>
-    </funcsynopsis>
+
+    <methodsynopsis>
+     <type>array</type><methodname>spliti</methodname>
+     <methodparam>
+      <type>string</type><parameter>Suchmuster</parameter>
+     </methodparam>
+     <methodparam>
+      <type>string</type><parameter>Zeichenkette</parameter>
+     </methodparam>
+     <methodparam choice="opt">
+      <type>int</type><parameter>Beschränkung></parameter>
+     </methodparam>
+    </methodsynopsis>
+
     <para>
      Diese Funktion entspricht <function>split</function> mit dem
      Unterschied, dass sie übereinstimmende Buchstaben nicht nach
@@ -440,12 +551,14 @@
    </refnamediv>
    <refsect1>
     <title>Beschreibung</title>
-    <funcsynopsis>
-     <funcprototype>
-      <funcdef>string <function>sql_regcase</function></funcdef>
-      <paramdef>string <parameter>Zeichenkette</parameter></paramdef>
-     </funcprototype>
-    </funcsynopsis>
+
+    <methodsynopsis>
+     <type>string</type><methodname>sql_regcase</methodname>
+     <methodparam>
+      <type>string</type><parameter>Zeichenkette</parameter>
+     </methodparam>
+    </methodsynopsis>
+
     <para>
      Gibt einen korrekten regulären Ausdruck zurück, der mit
      <parameter>Zeichenkette</parameter> ohne Berücksichtigung von
@@ -457,7 +570,9 @@
      <example>
       <title><function>sql_regcase</function> Beispiel</title>
       <programlisting role="php">
+<![CDATA[
 echo sql_regcase ("Foo bar");
+]]>
       </programlisting>
      </example>
      Gibt <screen>[Ff][Oo][Oo] [Bb][Aa][Rr]</screen> aus.
@@ -490,4 +605,7 @@
 sgml-local-catalogs:nil
 sgml-local-ecat-files:nil
 End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
 -->


Reply via email to