HXSELECT(1) HTML-XML-utils HXSELECT(1)

hxselect - استخراج عناصر یا مشخصه‌های منطبق با یک گزینشگر (CSS)

hxselect [ -i ] [ -c ] [ -l language ] [ -s separator ] selectors

دستور hxselect یک سند XML با ساختار صحیح (well-formed) را می‌خواند و تمام عناصر و مشخصه‌هایی را که با یکی از گزینشگرهای CSS ارائه‌شده به عنوان آرگومان مطابقت دارند، در خروجی می‌نویسد. برای مثال:


hxselect ol li:first-child

اولین li (آیتم فهرست در XHTML) را در یک ol (فهرست مرتب) انتخاب می‌کند.

اگر چندین گزینشگر وجود داشته باشد، باید با کاما از یکدیگر جدا شوند. برای مثال:


hxselect p + ul, blockquote ol

تمام عناصر ul پس از یک p و تمام عناصر ol که از نوادگان یک عنصر blockquote هستند را انتخاب می‌کند.

این دستور روی ورودی استاندارد عمل می‌کند.

دستور hxselect فرض می‌کند که گزینشگرهای کلاس (".foo") به مشخصه‌ای با نام "class" و گزینشگرهای شناسه ("#foo") به مشخصه‌ای با نام "id" اشاره دارند.

گزینشگر آزمایشی گره مشخصه '::attr(name)' پشتیبانی می‌شود و مشخصه‌ای با آن نام را انتخاب می‌کند.

کامنت‌ها و دستورالعمل‌های پردازشی (processing instructions) نادیده گرفته می‌شوند؛ یعنی خوانده شده ولی هرگز در خروجی نوشته نمی‌شوند.

گزینه‌های زیر پشتیبانی می‌شوند:

تطبیق بدون حساسیت به بزرگی و کوچکی حروف (case-insensitively). برای HTML و برخی دیگر از زبان‌های مبتنی بر SGML کاربرد دارد.
فقط محتوا چاپ شود. بدون -c، تگ‌های آغازین و پایانی عنصر منطبق نیز چاپ می‌شوند؛ با -c تنها محتویات عنصر منطبق در خروجی چاپ می‌شود. اگر به جای یک عنصر، یک مشخصه انتخاب شده باشد (گزینشگر ()attr::)، تنها مقدار آن مشخصه چاپ می‌شود.
تنظیم زبان پیش‌فرض، در صورتی که عنصر ریشه فاقد مشخصه xml:lang باشد (پیش‌فرض: هیچ‌کدام). مثال: -l en
رشته‌ای که پس از هر تطابق چاپ می‌شود (پیش‌فرض: خالی). نویسه‌های گریز (escape) مشابه زبان C را می‌پذیرد. مثال: -s ' 0(aq برای چاپ یک خط خالی پس از هر مورد منطبق.

عملوند زیر پشتیبانی می‌شود:

یک یا چند گزینشگر که با کاما از هم جدا شده‌اند. بیشتر گزینشگرهای سطح ۳ CSS پشتیبانی می‌شوند، به استثنای گزینشگرهایی که به تعامل کاربر (مانند ':active') یا چیدمان صفحه (مانند ':first-line') نیاز دارند.

گزینشگرهای غیرحساس به بزرگی و کوچکی حروف (گزینه -i) در حال حاضر تنها برای نویسه‌های ASCII کار می‌کنند ("a" با "A" مطابقت دارد)، نه برای نویسه‌های دیگر ("ä" با "Ä" مطابقت ندارد).

asc2xml(1), xml2asc(1), hxnormalize(1), hxremove(1), UTF-8 (RFC 2279)

10 Jul 2011 7.x