calibre - en to it translation catalogue (20 entries)

en: XPath tutorial
it: Guida di XPath

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.
it: In questa guida ti sarà fornita un'introduzione graduale a `XPath <https://en.wikipedia.org/wiki/XPath>`_, un linguaggio per query che può essere utilizzato per selezionare parti arbitrarie di documenti `HTML <https://en.wikipedia.org/wiki/HTML>`_ in calibre. XPath è uno standard ampiamente utilizzato e una ricerca su Google rivelerà parecchie informazioni. Questa guida, tuttavia, si concentra sull'utilizzo di XPath per compiti relativi agli e-book, come trovare le intestazioni dei capitoli in un documento HTML non strutturato.

en: Contents
it: Contenuti

en: Selecting by tag name
it: Selezione per nome del tag

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::
it: La forma più semplice di selezione è selezionare i tag per nome. Ad esempio, immagina di voler selezionare tutti i tag "<h2>" in un documento. La query di XPath per farlo è semplicemente::

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::
it: Il prefisso `//` significa *cerca ad ogni livello del documento*. Adesso immagina di dover cercare dei tag ``<span>`` che si trovano dentro tag ``<a>``. Ciò si può ottenere con::

en: If you want to search for tags at a particular level in the document, change the prefix::
it: Se vuoi cercare dei tag in un livello particolare del documento, modifica il prefisso:

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.
it: Questo troverà solo ``<p>A very short e-book to demonstrate the use of XPath.</p>`` nel :ref:`sample_ebook`, ma nessuno degli altri tag ``<p>``. Il prefisso ``h:`` negli esempi precedenti è richiesto per trovare i tag XHTML. Ciò è necessario perché, internamente, calibre rappresenta tutti i contenuti come XHTML. In XHTML i tag hanno un *namespace* e ``h:`` è il prefisso di namespace per i tag HTML.

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.
it: Ci sono diverse nuove funzionalità in questa espressione XPath. La prima è l'uso del carattere jolly ``*``. Significa *trova qualsiasi tag*. Ora dai un'occhiata all'espressione di test ``name()='h1' or name()='h2'``. :term:`name()` è un esempio di *funzione interna*. Essa valuta semplicemente il nome del tag. Quindi, usandola, possiamo selezionare tag i cui nomi sono `h1` o `h2`. Tieni presente che la funzione :term:`name()` ignora gli spazi di nomi in modo che non sia necessario il prefisso ``h:``. XPath ha diverse utili funzioni interne. Alcune di loro saranno introdotte in questa guida.

en: Selecting by attributes
it: Selezione per attributi

en: To select tags based on their attributes, the use of predicates is required::
it: Per selezionare i tag in base alle loro caratteristiche, è richiesto l'uso di predicati

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.
it: Qui, l'operatore ``@`` si riferisce agli attributi del tag. È possibile utilizzare alcune delle `funzioni incorporate di XPath` per eseguire una corrispondenza più sofisticata sui valori degli attributi.

en: Selecting by tag content
it: Selezione per contenuto del tag

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()`::
it: Usando XPath, puoi persino selezionare i tag in base al testo che contengono. Il modo migliore per farlo è usare la potenza delle *espressioni regolari* tramite la funzione integrata :term:`re: test()`::

en: Here the ``.`` operator refers to the contents of the tag, just as the ``@`` operator referred to its attributes.
it: Qui l'operatore ``.`` si riferisce al contenuto del tag, proprio come l'operatore ``@`` si riferiva ai suoi attributi.

en: Sample e-book
it: Libro di esempio

en: XPath built-in functions
it: Funzioni interne di XPath

en: The name of the current tag.
it: Il nome del tag attuale

en: ``contains(s1, s2)`` returns `true` if s1 contains s2.
it: ``contains(s1, s2)`` restituisce `true` se s1 contiene s2.

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>`_
it: ```re:test(src, pattern, flags)`` restituisce `true` se la stringa `src` corrisponde all'espressione regolare `pattern`. Un flag particolarmente utile è ``i``, che non considera la differenza MAIUSCOLE/minuscole. Un primo aiuto sulla sintassi per le espressioni regolari è disponibile in `sintassi delle regexp<https://docs.python.org/2.7/library/re.html>` _
