Update doc/efun/ aus Driversourcen.

Manpages der efuns aktualisiert, neue Manpages hinzugefuegt.

Change-Id: I7cc91684269ff56d1aef47d5c5e7c87f7fd531dc
diff --git a/doc/efun/regexp b/doc/efun/regexp
index c8f8910..9dc0fed 100644
--- a/doc/efun/regexp
+++ b/doc/efun/regexp
@@ -1,62 +1,40 @@
 SYNOPSIS
+        #include <regexp.h>
+
         string * regexp(string *list, string pattern)
+        string * regexp(string *list, string pattern, int opt)
 
-BESCHREIBUNG
-        Liefert ein neues Array mit all jenen Strings aus list zurueck,
-	welche auf das Muster pattern passen. Diese Funktion verwendet
-	dieselbe Syntax fuer regulaere Ausdruecke wie ed():
+DESCRIPTION
+        Match the pattern <pattern> (interpreted according to <opt> if
+        given) against all strings in list, and return a new array with all
+        strings that matched.
 
-        . Passt auf jedes beliebige Zeichen.
+        If there is an error in the regular expression, a runtime
+        error will be raised.
 
-        ^ Passt auf den Beginn einer Zeichenkette.
-
-        $ Passt auf das Ende einer Zeichenkette.
-
-        \< Passt auf das Beginn eines Wortes.
-
-        \> Passt auf das Ende eines Wortes.
-
-        \B Passt auf eine leere Zeichenkette an einem Wortrand
-	   (sollte aehnlich wie das Symbol zur Emacs-Kompatibilitaet in
-	   GNU egrep sein), seit 3.2@249
-
-        x|y Passt entweder auf den regulaeren Ausdruck x oder y.
-
-        () Verwendet den eingeschlossenen regulaeren Ausdruck wie einen
-	   'simplen' Ausdruck.
-
-        x* Der regulaere Ausdruck x passt beliebig oft (0 oder mehr).
-
-        x+ Der regulaere Ausdruck x passt mindestens einmal (1 oder mehr).
-
-        [..] Passt auf jedes in den Klammern eingeschlossenes Zeichen.
-
-        [^ ..] Passt auf jedes Zeichen, welches nicht in den Klammern
-	       eingeschlossen ist. Das .. ist durch einzelne Zeichen oder
-	       Bereiche von Zeichen zu ersten:
-        [abc] Passt auf a, b oder c.
-        [ab0-9] Passt auf a, b, c oder eine beliebige Ziffer.
-        [^a-z] Passt auf keinen klein geschriebenen Buchstaben.
-
-        \c Passt auf das Zeichen c, selbst wenn es eines der Sonderzeichen ist.
-
-        Wenn es einen Fehler im regulaeren Ausdruck gibt, wird ein
-	Laufzeitfehler ausgeloest.
-
-BEISPIELE
+EXAMPLES
         string strs;
-        if (strs = regexp(({ "Bitte helfen sie mir, Sir John." }),
-                          "\\<helfen\\>.*\\<mir\\>")) {
-           if (sizeof(strs)
-              write("Es passt.\n");
+        string pattern;
+
+        if (regexp_package() == RE_PCRE)
+            pattern = "\\<help\\>.*\\<me\\>";
+        else
+            pattern = "\\bhelp\\b.*\\bme\\b";
+
+        if (strs = regexp(({"please, help me Sir John."}), pattern)) {
+            if (sizeof(strs)
+                write("It matches.\n");
         }
 
-        Der regulaere Ausdruck wird den uebergebenen String (welcher in
-	einem Array verpackt wurde) daraufhin ueberpruefen, ob
-	sowas wie "helfen ... mir" darin vorkommt.
+        The regular expression will test the given string (which is
+        packed into an array) if there is something like "help ... me"
+        inside of it.
 
-GESCHICHTE
-        LDMud 3.2.9 fuegte das Sonderzeichen '+' hinzu.
+HISTORY
+        LDMud 3.3 added the optional <opt> argument.
+        Since 3.5.0 a error is raised if RE_PCRE is specified in <opt>, but
+        the driver lacks PCRE support.
 
-SIEHE AUCH
-        regexplode(E), regreplace(E), sscanf(E)
+SEE ALSO
+        regexplode(E), regmatch(E), regreplace(E), regexp_package(E), sscanf(E),
+        regexp(C)