⊗jsSpREEP 129 of 294 menu

Кармаҳо дар худи регуляри экспрессия дар JavaScript

Мундариҷаи кармаҳо на танҳо дар сатри ивазкунӣ, балки дар худи регуляри экспрессия дастрасанд: мо метавонем чизеро ба карма гузорем, сипас ҳамон дар регуляри экспрессия бигӯем, ки дар ин ҷо бояд мундариҷаи ҳамин карма қарор гирад.

Мундариҷаи кармаҳо ба воситаи рақамҳои онҳо дастрасанд, ки пеш аз онҳо аломати бурҷгоҳ (\) қарор дорад. Масалан, кармаи аввал ба ин тавр дастрас аст: \1, кармаи дуюм ба ин тавр - \2, кармаи сеюм - \3 ва ҳамин тавр.

Мутмаин ҳастам, ки ҳамаи он чи ки дар боло навишта шудааст, то ҳол барои шумо хеле норавшан аст. Ин аҷиб нест, зеро кармаҳо - маконҳои дар регуляри экспрессияҳо камтарфаҳмтарин мебошанд. Биёед бо мисолҳо шарҳ диҳем.

Мисол

Фарз мекунем, ки мо чунин сатр дорем:

let str = 'aa bb cd ef';

Биёед дар он ҳама ҷойҳоеро пайдо кунем, ки дар онҳо ду ҳарфҳои якхела пай дар пай истодаанд. Барои ҳалли масъала ҳар як ҳарфро меҷӯем, онро ба карма мегузорем, сипас месанҷем, ки оё дар аломати навбатӣ мундариҷаи ҳамин карма омадааст:

let res = str.replace(/([a-z])\1/g, '!');

Дар натиҷа ба тағйирёбандаи зерин сабт мешавад:

'! ! cd ef'

Мисол

Фарз мекунем, ки мо чунин сатр дорем:

let str = 'asxca buzxb csgd';

Биёед дар он ҳама калимаҳоеро пайдо кунем, ки дар онҳо ҳарфи аввал ва охирин якхелаанд. Барои ҳалли масъала намунаи зеринро менависем: ҳарф, сипас як ё зиёда ҳарф, ва сипас ҳамон ҳарфе ки дар аввал омада буд:

let res = str.replace(/([a-z])[a-z]+\1/g, '!');

Дар натиҷа ба тағйирёбандаи зерин сабт мешавад:

'! ! csgd'

Масъалаҳои амалӣ

Сатр дода шудааст:

let str = 'aaa bbb ccc xyz';

Ҳама зерсатрҳоеро пайдо кунед, ки дар онҳо се ҳарфҳои якхела пай дар пай ҳастанд.

Сатр дода шудааст:

let str = 'a aa aaa aaaa aaaaa';

Ҳама зерсатрҳоеро пайдо кунед, ки дар онҳо ду ё зиёда ҳарфҳои якхела пай дар пай ҳастанд.

Сатр дода шудааст:

let str = 'aaa aaa bbb bbb ccc ddd';

Ҳама зерсатрҳоеро пайдо кунед, ки дар онҳо ду калимаи якхела пай дар пай ҳастанд.

Тоҷикӣ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мо барои коркарди сомона, таҳлил ва шахсӣ кардан аз cookie истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан