calibre - en to ms translation catalogue (19 entries)

en: XPath tutorial
ms: Tutorial 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.
ms: Dalam tutorial ini, anda diperkenalkan dengan bahasa `XPath <https://en.wikipedia.org/wiki/XPath>`_, iaitu bahasa kueri atau pertanyaan yang boleh digunakan untuk memilih bahagian arbitrari `HTML <https://en.wikipedia.org/wiki/HTML>`_ dokumen di dalam calibre. XPath merupakan piawaian yang banyak digunakan, dan jika anda mencari di dalam google akan dapati sangat banyak maklumat mengenai. Walaubagaimanapun, tutorial ini lebih fokuskan pada penggunaan XPath untuk tugasan berkaitan e-buku seperti mencari pengepala bab di dalam dokumen HTML tidak berstruktur.

en: Contents
ms: Kandungan

en: Selecting by tag name
ms: Memilih berdasarkan nama 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::
ms: Bentuk paling ringkas pemilihan ialah dengan memilih tag mengikut nama. Contohnya, anda mahu memilih semua tag ``<h2>`` di dalam dokumen. Pertanyaan XPath untuk ini hanyalah simply::

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::
ms: Awalan `//` bermaksud *gelintar pada mana-mana aras dokumen*. Sekarang anda mahu gelintar tag ``<span>`` yang berada di dalam tag ``<a>`` tags. Ia boleh dibuat dengan::

en: If you want to search for tags at a particular level in the document, change the prefix::
ms: Jika anda mahu gelintar tag pada aras tertentu di dalam dokumen, ubah prefix::

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.
ms: Ini hanya padankan ``<p>A very short ebook to demonstrate the use of XPath.</p>`` di dalam :ref:`sample_ebook` tetapi bukan pada mana-mana tag ``<p>`` yang lain. Awalan ``h:`` dalam contoh di atas diperlukan untuk memadani tag XHTML. Ini kerana secara dalaman, calibre mewakili semua kandungan sebagai XHTML. Dalam tag XHTML yang mempunyai *namespace*, dan ``h:`` merupakan awalan ruang nama untuk 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.
ms: Terdapat beberapa fitur baharu di dalam ungkapan XPath ini. Yang pertama ialah penggunaan kad liar ``*``. Ia bermaksud *padan mana-mana tag*. Sekarang lihat pada ungkapan uji `name()='h1' atau name()='h2'``. :term:`name()` ialah contoh *fungsi terbina-dalam*. Ia hanyalah menilai nama tag. Oleh itu dengan menggunakannya, kita boleh memilih tag yang namanya sama ada `h1` atau `h2`. Perhatian, fungsi :term:`name()` mengabaikan ruang nama supaya tidak memerlukan awalan ``h:``. XPath mempunyai beberapa fungsi terbina-dalam yang berguna. Ada beberapa lagi fungsi akan diperkenalkan di dalam tutorial ini.

en: Selecting by attributes
ms: Memilih berdasarkan atribut

en: To select tags based on their attributes, the use of predicates is required::
ms: Untuk memilih tag berdasarkan atribut mereka, penggunaan predikat diperlukan::

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.
ms: Di sini, operator ``@`` merujuk pada atribut tag. Anda boleh guna beberapa `fungsi terbina-dalam XPath`_ untuk membuat padanan lebih kompleks pada nilai atribut.

en: Selecting by tag content
ms: Memilih berdasarkan kandungan 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()`::
ms: Dengan menggunakan XPath, anda boleh pilih tag berdasarkan pada teks yang dikandunginnya. Cara terbaik membuatnya ialah denga gunakan kehebatan *ungkapan nalar* melalui fungsi terbina-dalam :term:`re:test()`::

en: Here the ``.`` operator refers to the contents of the tag, just as the ``@`` operator referred to its attributes.
ms: Di sini operator ``.`` merujuk pada kandungan tag, sepertimana operator ``@`` merujuk pada atributnya.

en: Sample e-book
ms: E-buku sampel

en: XPath built-in functions
ms: Fungsi terbina-dalam XPath

en: The name of the current tag.
ms: Nama bagi tag semasa

en: ``contains(s1, s2)`` returns `true` if s1 contains s2.
ms: ``contains(s1, s2)`` kembali `true` jika s1 mengandungi s2.
