Bepul Matnni Teskari Aylantiruvchi

Matnni belgi-belgi teskari aylantiring, so'zlar tartibini o'zgartiring, har bir qatorni aylantiring yoki qatorlar tartibini teskari qiling. Palindrom aniqlashni o'z ichiga oladi.

Yuklangandan keyin oflayn ishlaydi
Palindrom emas
Teskari qilingan
!dlroW ,olleH
13 belgilar2 so‘zlar1 qatorlar

Qanday ishlaydi

Bu asbob nol tashqi bog'liqlik bilan matn ni to'liq brauzeringizda teskariga aylantiradi — asosiy mantiq oddiy JavaScript, bir muhim tafsilot bilan: u matnni teskariga aylantirishdan oldin grafema klasterlariga bo'lish uchun brauzerning o'rnatilgan Intl.Segmenter API'sidan (mavjud bo'lganda) foydalanadi, shunda emoji ketma-ketliklari (👨‍👩‍👧) va urg'uli harflar (é) kabi ko'p-kod-nuqtali belgilar buzilmasdan omon qoladi.

  1. 1
    Rejim tanlash
    Oltita teskariga aylantirish rejimi mavjud: har bir belgini teskariga aylantirish, har bir so'z ichidagi harflarni teskariga aylantirish (so'z tartibini saqlab), so'z tartibini teskariga aylantirish, har qatordagi belgilarni teskariga aylantirish, qator tartibini teskariga aylantirish yoki butun satrni yuqori-pastga aylantirish. Tanlangan rejim siz yozayotganda darhol qo'llaniladi — yuborish qadami yo'q.
  2. 2
    Intl.Segmenter orqali grafema-bilimli bo'lish
    Belgilarni teskariga aylantirishdan oldin, matn granularity 'grapheme' ga o'rnatilgan Intl.Segmenter yordamida bo'linadi. Bu xom Unicode kod nuqtalari o'rniga foydalanuvchi qabul qiladigan belgilarni beradi, shuning uchun bayroq emojisi yoki asosiy-harf-plyus-birlashtiruvchi-belgi jufti massiv teskariga aylantirilganda birga qoladi. Intl.Segmenter'siz brauzerlar tarqatuvchi-operator iteratsiyasiga qaytadi.
  3. 3
    Yuqori-pastga rejimi qidiruv jadvalidan foydalanadi
    'Yuqori-pastga' rejimi har bir belgini Unicode o'xshashlarining qat'iy kodlangan 100-yozuvli qidiruv jadvali orqali xaritalaydi (masalan, 'e' 'ǝ' ga aylanadi, '?' esa '¿' ga aylanadi), so'ng grafema massivini teskariga aylantiradi, shunda natija jismonan 180 daraja aylantirilganda to'g'ri o'qiladi.
  4. 4
    Chiqish va palindrom aniqlash
    Teskariga aylantirilgan natija React'ning useMemo xuki orqali jonli yangilanadi. Belgi-teskariga-aylantirish rejimida asbob shuningdek solishtirishdan oldin Unicode-bilimli harf/raqam filtri (\p{L}\p{N}) yordamida asl kiritish palindrom ekanligini tekshiradi. Nusxalashni bosish chiqishni standart navigator.clipboard API orqali buferga yozadi.

Tegishli asboblar

Ko'p so'raladigan savollar