Wá kí o sì Fi Ọ̀rọ̀ Rọ́pò Ọ̀fẹ́
Wá kí o sì fi ọ̀rọ̀ rọ́pò pẹ̀lú ìbáramu lásán tàbí regex, iye ìbáramu lákòókò gidi, àti àyẹ̀wò tí a fi àmì hàn. Ó ń ṣètìlẹyìn fún àìṣàyàtọ̀ ọ̀rọ̀-ńlá/kékeré, gbogbo-ọ̀rọ̀, àti àwọn ìtọ́kasí ẹgbẹ́ regex.
💡 Nínú ipò ọ̀rọ̀-ìṣàwárí déédéé, lo àwọn ẹgbẹ́ ìmúpèlé nínú Wá bí (\d{4})-(\d{2}) kí o sì tọ́ka sí wọn nínú Fi ropò pẹ̀lú $1, $2 — ó dára fún ṣíṣàtúntò àwọn ọjọ́, orúkọ, tàbí ID ní ọ̀pọ̀lọpọ̀.
Bí Ó Ṣe Ń Ṣiṣẹ́
Wá àti Rọ́pò ń ṣiṣẹ́ pátápátá nínú aṣàwákiri rẹ pẹ̀lú ẹ́ńjìnnì RegExp JavaScript tí a kọ́ sínú rẹ̀ — kò sí ìwé-ìṣirò, kò sí sáfà, kò sí gbígbé sókè. A ń ṣiṣẹ́ ọ̀rọ̀ ládùúgbò ní kété tí o bá kọ, ní lílo String.prototype.matchAll fún kíkà àti String.prototype.replace fún ìyípadà.
- 1A kó àwòṣe náà sí RegExpBí o ṣe ń kọ, a ń kó ọ̀rọ̀ wíwá náà sí RegExp JavaScript pẹ̀lú debounce 150 ms nítorí náà àwọn àwòṣe tí ó le kì í dí tábù náà lọ́wọ́ ní ìtẹ̀ kọ́kọ́rọ́ kọ̀ọ̀kan. Ní ipò ọ̀rọ̀-lásán a ń escape àmì regex kọ̀ọ̀kan kọ́kọ́, nítorí náà àwọn àmì dọ̀tì àti àkámọ́ gan-an ni a mú gẹ́gẹ́ bí àwọn àmì gan-an. Ṣíṣí ipò Regex ń fi àwòṣe rẹ tààrà kọjá. Ipò gbogbo-ọ̀rọ̀ ń fi ìlà àkámọ́ ọ̀rọ̀ \b(?:...)\b sí àwòṣe náà, ipò tí kò-fi-àbídí-ṣe-pàtàkì sì ń fi àmì i kún un.
- 2Ìgbésẹ̀ matchAll kan ṣoṣo ń ka tí ó sì ń fi àmì sí iÌpè matchAll kan lórí ọ̀rọ̀ debounced náà ń mú gbogbo ohun ìbámu jáde. A ń ka iye ìbámu tààrà láti gígùn àtòjọ yẹn. Fún àwọn ọ̀rọ̀ tí ó kéré ju àmì 200,000 lọ, a ń kọ́ àkíyèsí tí a fi àmì sí i nípa rìn kiri àwọn ìdí ìbámu tí a sì ń fi ìbámu kọ̀ọ̀kan wé tag <mark> — a ń ṣe HTML-escape àwọn apá ọ̀rọ̀ gan-an náà kí ó tó fi wọ́n bọ̀, kì í ṣe lẹ́yìn, nítorí náà àwọn ìbámu tí ó ní &, <, tàbí > ni a mú dáadáa.
- 3Rọ́pò pẹ̀lú ọ̀rọ̀ gan-an tàbí àwọn àmọ̀nà ẹgbẹ́-mímúA ń mú ìtọjade náà jáde pẹ̀lú String.prototype.replace pẹ̀lú àmì global, tí ó ń rọ́pò ìbámu kọ̀ọ̀kan ní àkókò kan náà. Ní ipò ọ̀rọ̀-lásán, $ èyíkéyìí nínú ọ̀rọ̀ ìrọ́pò náà ni a ṣe ìlọ́po sí $$ nítorí náà àwọn àmì bí $& àti $1 ni a fi sí i gan-an dípò kí a túmọ̀ wọn gẹ́gẹ́ bí àmọ̀nà. Ní ipò Regex, $1, $2, àti bẹ́ẹ̀ bẹ́ẹ̀ lọ ń ṣiṣẹ́ gẹ́gẹ́ bí ìrọ́pò ẹgbẹ́-mímú JavaScript déédéé.
- 4Dàkọ tàbí gba àbájáde jádeỌ̀rọ̀ tí a tún kọ ń farahàn nínú textarea kíkà-nìkan bí o ṣe ń kọ. Dídàkọ ń lo API navigator.clipboard.writeText aṣàwákiri. Gbígbà ń kọ́ Blob irú text/plain ní àkókò kan náà tí ó sì ń dá ìfipamọ́ ládùúgbò kan sílẹ̀ — kò sí ohunkóhun tí ó kúrò lára ẹ̀rọ rẹ ní àkókò èyíkéyìí.
Àwọn Irinṣẹ Tó Jọra
Ìyàtọ̀ Ọ̀rọ̀
Fi apá ọ̀rọ̀ méjì wéra kí o sì wo ohun tí ó yípadà gan-an. Ìyàtọ̀ ìlà-sí-ìlà pẹ̀lú àwọn ìlà tí a fi kún, tí a yọ kúrò, àti tí kò yípadà.
Ìyàtọ̀ CSV
Fi ọwọ́ wé fáìlì CSV méjì nípa ọ̀wọ́n pàtàkì kan kí o sì rí àwọn ọ̀nà tí a ṣàfikún, tí a yọ kúrò, tàbí tí a yí padà — pẹ̀lú àwọn pápá tí ó yàtọ̀ tí a fihàn láti ọ̀dà sí tuntun. Ó ń ṣiṣẹ́ pẹ̀lú àwọn pápá tí a fi àmì-ọ̀rọ̀ yí ká; ó ń ṣiṣẹ́ pátápátá nínú aṣàwárí rẹ.
Olùwá BPM & Bọ́tìnì
Fojú díwọ̀n sáré orin (BPM) àti bọ́tìnì orin kan ní inú aṣàwárí rẹ, pẹ̀lú àṣàyàn tap-tempo.