LibraTool logoLibraTool

Баръакскунандаи сатр-и ройгон

Матнро ҳарф ба ҳарф баръакс кунед, тартиби калимаҳоро баргардонед, ҳар сатрро оина кунед ё тартиби сатрҳоро баръакс кунед. Муайянкунии палиндром дар бар мегирад.

Ҳамин ки бор шуд офлайн кор мекунад
Палиндром нест
Баръакскардашуда
!dlroW ,olleH
13 аломатҳо2 калимаҳо1 сатрҳо

Чӣ тавр он кор мекунад

Ин абзор матнро пурра дар браузери шумо бо сифр вобастагии берунӣ баръакс мекунад — мантиқи асосӣ JavaScript-и одӣ буда, бо як тафсили муҳим: он API-и дарунсохти Intl.Segmenter-и браузерро (дар ҷое ки дастрас аст) истифода мебарад, то матнро ба кластерҳои графема пеш аз баръакс кардан тақсим кунад, бинобар ин аломатҳои бисёр-нуқтарамз ба монанди пайдарпайии эмоҷи (👨‍👩‍👧) ва ҳарфҳои аксентдор (é) пурра боқӣ мемонанд, на пора-пора шаванд.

  1. 1
    Интихоби ҳолат
    Шаш ҳолати баръакскунӣ дастрасанд: баръакс кардани ҳар аломат, баръакс кардани ҳарфҳо дар дохили ҳар калима (нигоҳ доштани тартиби калима), баръакс кардани тартиби калима, баръакс кардани аломатҳо дар ҳар хат, баръакс кардани тартиби хат, ё чаппакунии тамоми сатр. Ҳолати интихобшуда фавран ҳангоми навиштан татбиқ мешавад — ягон қадами супоридан нест.
  2. 2
    Тақсими графема-огоҳ тавассути Intl.Segmenter
    Пеш аз баръакс кардани аломатҳо, матн бо Intl.Segmenter бо granularity ба 'grapheme' гузошташуда тақсим мешавад. Ин аломатҳои аз ҷониби корбар дарконидашударо, на нуқтаҳои хоми рамзи юникод, медиҳад, бинобар ин эмоҷии парчам ё ҷуфти ҳарфи-асосӣ-плюс-аломати-муттаҳид якҷоя мемонад, вақте ки массив баръакс мешавад. Браузерҳои бидуни Intl.Segmenter ба такрори оператори паҳн бармегарданд.
  3. 3
    Ҳолати чаппа ҷадвали ҷустуҷӯиро истифода мебарад
    Ҳолати 'чаппа' ҳар аломатро тавассути ҷадвали ҷустуҷӯии собити 100-вурудии юникоди монандшинос харита мекунад (масалан, 'e' ба 'ǝ' табдил меёбад, '?' ба '¿' табдил меёбад), сипас массиви графемаро баръакс мекунад, то натиҷа дуруст хонда шавад, вақте ки ба таври ҷисмонӣ 180 дараҷа чарх мехӯрад.
  4. 4
    Натиҷа ва муайянкунии палиндром
    Натиҷаи баръакс зинда тавассути крюки useMemo-и React нав мешавад. Дар ҳолати баръакскунии аломат абзор инчунин месанҷад, ки оё вуруди аслӣ палиндром аст, бо истифодаи филтри ҳарф/рақами юникод-огоҳ (\p{L}\p{N}) пеш аз муқоиса. Зер кардани Нусхабардорӣ натиҷаро тавассути API-и стандартии navigator.clipboard ба ҳофиза менависад.

Абзорҳои марбут

Саволҳои зуд-зуд додашаванда