முக்கிய உள்ளடக்கத்திற்குச் செல்லவும்
தொகுதி 7 · பாடம் 1 இன் 4பாடத்திட்டத்தில் 25/32~12 min
தொகுதி பாடங்கள் (1/4)

அனைத்து கொடிகளும் விரிவாக

நவீன ஜாவாஸ்கிரிப்ட்டில் கிடைக்கும் அனைத்து கொடிகளின் முழுமையான மறுபரிசீலனை (ES2024). கொடி என்பது அதன் நடத்தையை மாற்றியமைக்கும் ஒற்றை எழுத்து ரீஜெக்ஸ்; அவை எந்த வரிசையிலும் இணைக்கப்படலாம்.

கொடிபெயர்விளைவு
gஉலகளாவியஅனைத்து பொருத்தங்களையும் கண்டறியும், முதல் மட்டும் அல்ல (matchAllக்கு தேவை).
iவழக்கை புறக்கணிக்கவும்கேஸ்-சென்சிட்டிவ் (u/v கொடியுடன் கூடிய யூனிகோட் எழுத்துகள் உட்பட).
mபல வரி^ மற்றும் $ ஒரு வரியின் தொடக்கம்/முடிவுடன் பொருந்தும், சரம் மட்டும் அல்ல.
sஅனைத்து புள்ளிகள். புதிய வரி \n உடன் பொருந்துகிறது.
uயூனிகோட்குறியீடு புள்ளிகளின் சரியான கையாளுதல் > 0xFFFF மற்றும் \\p{...} ஐ செயல்படுத்துகிறது.
vயூனிகோட் வி-முறைசெட் செயல்பாடுகளுடன் u இன் நவீன நீட்டிப்பு ([abc&&[def]]).
yஒட்டும்lastIndex நிலையில் இருந்து மட்டுமே பொருந்தும், தவிர்க்க முடியாது.
dகுறியீடுகள் உள்ளனஒவ்வொரு குழுவின் தொடக்கம்/முடிவுடன் indices முடிவு அடங்கும்.
JS
const re = /foo/gimu; // global + insensitive + multiline + unicode
re.flags; // "gimu" (always in canonical order: dgimsuvy)

வழக்கமான சேர்க்கைகள்

  • g + i -- "எல்லாவற்றையும் கண்டுபிடி, கேஸ் இன்சென்சிட்டிவ்". 80% நடைமுறை பயன்பாடுகள்.
  • g + m -- பல வரி உரையில் வரிக்கு வரி பொருத்த.
  • g + s -- "புதிய வரிகள் உட்பட எதிலும் புள்ளி பொருந்துகிறது". பல வரிகளில் தொகுதிகளை பிரித்தெடுக்க பயனுள்ளதாக இருக்கும்.
  • u (அல்லது v) -- எப்போதும் நீங்கள் எந்த மொழியிலோ அல்லது ஈமோஜியிலோ நிஜ உலக உரையைக் கையாளுகிறீர்கள் என்றால்.

யூனிகோட் வி-முறை மற்றும் கொடி பரிணாமம்

v கொடி (ES2024 இல் கிடைக்கிறது) u ஐ மாற்றுகிறது மற்றும் எழுத்து வகுப்பு வெட்டும் மற்றும் கழித்தல் (எ.கா. [\\p{White_Space}&&\\p{ASCII}]) போன்ற தொகுப்புகளில் மேம்பட்ட செயல்பாடுகளை செயல்படுத்துகிறது.

முயற்சி செய்து பாருங்கள்

உடற்பயிற்சி#regex.m7.l1.e1
முயற்சிகள்: 0ஏற்றுகிறது…

கேஸ் எதுவாக இருந்தாலும் 'சியாவோ'வின் அனைத்து நிகழ்வுகளையும் கண்டறியவும். சரியான கொடியை பயன்படுத்தவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

g க்கு அடுத்துள்ள i கொடியை (கேஸ்-சென்சிட்டிவ்) சேர்க்கவும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

மதிப்பாய்வு பயிற்சி

உடற்பயிற்சி#regex.m7.l1.e2
முயற்சிகள்: 0ஏற்றுகிறது…

புதிய வரிகளைக் கொண்டிருந்தாலும், `<pre>` மற்றும் `</pre>` இடையே ஒரு தொகுதியைக் கண்டறியவும். புள்ளியை புதிய வரிகளுடன் பொருந்தச் செய்யும் கொடியை நீங்கள் பயன்படுத்த வேண்டும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

s கொடியை இவ்வாறு சேர்க்கவும். புதிய வரிகளுடன் பொருந்துகிறது, மேலும் சோம்பேறி .+ பயன்படுத்தவா? முதலில் </pre> நிறுத்த வேண்டும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

கூடுதல் சவால்

உடற்பயிற்சி#regex.m7.l1.e3
முயற்சிகள்: 0ஏற்றுகிறது…

Match sequences of ASCII characters, explicitly excluding digits, using Unicode v-mode properties (flag `v`) and set subtraction syntax `[\p{ASCII}--\p{Nd}]+`.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

எண்களை விலக்க, v கொடியைப் பயன்படுத்தி, [\\p{ASCII}--\\p{Nd}]+ என்ற தொகுப்பைக் கழிக்கவும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்