calibre - en to de translation catalogue (20 entries)

en: XPath tutorial
de: XPath-Tutorial

en: In this tutorial, you will be given a gentle introduction to `XPath <https://en.wikipedia.org/wiki/XPath>`_, a query language that can be used to select arbitrary parts of `HTML <https://en.wikipedia.org/wiki/HTML>`_ documents in calibre. XPath is a widely used standard, and googling it will yield a ton of information. This tutorial, however, focuses on using XPath for e-book related tasks like finding chapter headings in an unstructured HTML document.
de: In dieser Anleitung bekommen Sie eine einfache Einführung in `XPath <https://de.wikipedia.org/wiki/XPath>`_, einer Abfragesprache, zum Auswählen von beliebigen Teilen innerhalb eines `HTML <https://de.wikipedia.org/wiki/HTML>`_ Dokuments in Calibre. XPath ist ein weit verbreiteter Standard der, wenn Sie danach googeln, viele Anwendungsbeispiele aufzeigt. Diese Anleitung wird sich auf die Verwendung von XPath für Aufgaben rund um eBooks konzentrieren, wie z. B. um Kapitelüberschriften in einem unstrukturierten HTML-Dokument zu finden.

en: Contents
de: Inhalt

en: Selecting by tag name
de: Auswahl über Tag-Name

en: The simplest form of selection is to select tags by name. For example, suppose you want to select all the ``<h2>`` tags in a document. The XPath query for this is simply::
de: Die einfachste Form einer Auswahl ist die Auswahl von Tags durch deren Namen. Wenn man z. B. alle ``<h2>``-Tags in einem Dokument finden möchte, ist die dazu passende XPath-Abfrage::

en: The prefix `//` means *search at any level of the document*. Now suppose you want to search for ``<span>`` tags that are inside ``<a>`` tags. That can be achieved with::
de: Das Präfix `//` bedeutet *suche auf jeder Ebene des Dokuments*. Angenommen, Sie möchten nun nach ``<span>``-Tags suchen, die sich innerhalb von ``<a>``-Tags befinden. Dies wird durch den folgenden Ausdruck erreicht::

en: If you want to search for tags at a particular level in the document, change the prefix::
de: Wenn Sie nach Tags einer bestimmten Ebene im Dokument suchen möchten, ändern Sie das Präfix wie folgt ab::

en: This will match only ``<p>A very short e-book to demonstrate the use of XPath.</p>`` in the :ref:`sample_ebook` but not any of the other ``<p>`` tags. The ``h:`` prefix in the above examples is needed to match XHTML tags. This is because internally, calibre represents all content as XHTML. In XHTML tags have a *namespace*, and ``h:`` is the namespace prefix for HTML tags.
de: Dieser wird ``<p>Ein sehr kleines eBook, um die Verwendung von XPath zu demonstrieren.</p>`` im :ref:`sample_ebook` finden und keine anderen ``<p>``-Tags. Das Präfix ``h:`` in den obigen Beispielen ist zum Finden von XHTML-Tags erforderlich. Der Grund hierfür liegt in der internen Verarbeitung von Calibre, da alle Inhalte als XHTML-Code interpretiert werden. In XHTML haben Tags einen *Namensraum* und ``h:`` ist der Namensraum-Präfix für HTML-Tags.

en: There are several new features in this XPath expression. The first is the use of the wildcard ``*``. It means *match any tag*. Now look at the test expression ``name()='h1' or name()='h2'``. :term:`name()` is an example of a *built-in function*. It simply evaluates to the name of the tag. So by using it, we can select tags whose names are either `h1` or `h2`. Note that the :term:`name()` function ignores namespaces so that there is no need for the ``h:`` prefix. XPath has several useful built-in functions. A few more will be introduced in this tutorial.
de: In diesem XPath-Ausdruck gibt es einige neue Eigenschaften. Die erste ist die Verwendung des Platzhalters ``*``. Dieser bedeutet *finde jeden Tag*. Nun schauen wir uns den Testausdruck ``name()='h1' or name()='h2'`` an. :term:`name()` ist ein Beispiel für eine *integrierte Funktion*. Hierbei wird der Name des angegebenen Tags ausgewertet. Wendet man dies wie in unserem Beispiel an, werden alle Tags mit dem Namen `h1` oder `h2` gefunden. Beachten Sie, dass die Funktion :term:`name()` Namensräume ignoriert. Es besteht daher keine Notwendigkeit für die Anwendung des Präfix ``h:``. XPath hat einige nützliche Funktionen integriert. Weitere werden in dieser Anleitung vorgestellt.

en: Selecting by attributes
de: Auswahl über Attribute

en: To select tags based on their attributes, the use of predicates is required::
de: Um Tags nach ihren Attributen auszuwählen, ist die Verwendung von Prädikaten erforderlich::

en: Here, the ``@`` operator refers to the attributes of the tag. You can use some of the `XPath built-in functions`_ to perform more sophisticated matching on attribute values.
de: Der ``@``-Operator bezieht sich auf die Attribute eines Tags. Sie können einige der `XPath built-in functions`_ nutzen, um anspruchsvollere Abfragen auf Attributwerte auszuführen.

en: Selecting by tag content
de: Auswahl nach Tag-Inhalt

en: Using XPath, you can even select tags based on the text they contain. The best way to do this is to use the power of *regular expressions* via the built-in function :term:`re:test()`::
de: Mithilfe von XPath können Sie auch Tags auswählen, die sich auf einen im Tag enthaltenen Text beziehen. Der beste Weg ist die Verwendung der Fähigkeiten von *regulären Ausdrücken* über die integrierte Funktion :term:`re:test()`::

en: Here the ``.`` operator refers to the contents of the tag, just as the ``@`` operator referred to its attributes.
de: Der ``.``-Operator bezieht sich auf den Inhalt eines Tags, sowie sich der ``@``-Operator auf seine Attribute bezieht.

en: Sample e-book
de: Ein Beispiel e-Book

en: XPath built-in functions
de: Integrierte XPath-Funktionen

en: The name of the current tag.
de: Der Name des aktuellen Tags.

en: ``contains(s1, s2)`` returns `true` if s1 contains s2.
de: ``contains(s1, s2)`` gibt `true` zurück wenn s1 s2 beinhaltet.

en: ``re:test(src, pattern, flags)`` returns `true` if the string `src` matches the regular expression `pattern`. A particularly useful flag is ``i``, it makes matching case insensitive. A good primer on the syntax for regular expressions can be found at `regexp syntax <https://docs.python.org/library/re.html>`_
de: ``re:test(src, pattern, flags)`` gibt `true` zurück, wenn der String `src` dem regulären Ausdruck `pattern` entspricht . Ein möglich anzufügendes Flag ist ``i``, das verzichtet auf Groß- und Kleinschreibung. Ein gutes Beispiel dafür finden Sie unter `regexp syntax <https://docs.python.org/library/re.html>`_
