æåã¯ã©ã¹: [...], [^...]
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2015å¹´7æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
æåã¯ã©ã¹ã¯ãç¬èªã®æåéåã«å«ã¾ãããã¾ãã¯å«ã¾ããªãæåã«ä¸è´ãã¾ããv ãã©ã°ãæå¹ã«ããã¨ãå¯å¤é·ã®ã®æååã«ã使ç¨ãããã¨ãã§ãã¾ãã
æ§æ
[]
[abc]
[A-Z]
[^]
[^abc]
[^A-Z]
// `v` ã¢ã¼ãã®ã¿
[operand1&&operand2]
[operand1--operand2]
[\q{substring}]
弿°
operand1,operand2-
åä¸ã®æåãä»ã®è§æ¬å¼§ã§å²ã¾ããæåã¯ã©ã¹ãæåã¯ã©ã¹ã¨ã¹ã±ã¼ããUnicode æåã¯ã©ã¹ã¨ã¹ã±ã¼ããã¾ãã¯
\qæ§æã使ç¨ããæååã®ä½ãããã¨ããã¨ãã§ãã¾ãã substring-
ãªãã©ã«æååã§ãã
解説
æåã¯ã©ã¹ã¯è§æ¬å¼§ã§å²ã¾ããæåã®ãªã¹ããæå®ãããªã¹ãå
ã®ä»»æã®æåã¨ç
§åãã¾ãã v ãã©ã°ã¯ãæåã¯ã©ã¹ã®è§£éæ¹æ³ã大ããå¤ãã¾ãã以ä¸ã®æ§æã¯ v ã¢ã¼ãã§ã v ã¢ã¼ãã§ãªãã¦ã使ç¨ã§ãã¾ãã
- åä¸ã®æå: ãã®æåèªä½ã«ä¸è´ãã¾ãã
- æåã®ç¯å²: ãã®ç¯å²ã®ããããã®æåã«ä¸è´ãã¾ããç¯å²ã¯ããã·ã¥ (
-) ã§åºåããã 2 æåã§æå®ãã¾ããæåã®æåã¯ã2 ã¤ç®ã®æåãããæåå¤ãå°ãããªããã°ãªãã¾ãããæåå¤ã¯ãã®æåã® Unicode ã³ã¼ããã¤ã³ãã§ããUnicode ã³ã¼ããã¤ã³ãã¯é常ã¢ã«ãã¡ãããé ã«å²ãå½ã¦ãã®ã§ã[a-z]ã¯ãã¹ã¦å°æåã®ã©ãã³æåãæå®ãã[α-Ï]ã¯ãã¹ã¦å°æåã®ã®ãªã·ã£æåãæå®ãã¾ããUnicode é対å¿ã¢ã¼ãã§ã¯ãæ£è¦è¡¨ç¾ã¯ BMP æåã®ä¸¦ã³ã¨ãã¦è§£éããã¾ãããããã£ã¦ãæåã¯ã©ã¹ã®ãµãã²ã¼ããã¢ã¯ 1 æåã§ã¯ãªã 2 æåã表ãã¾ãã詳細ã¯ä¸è¨ãåç §ãã¦ãã ããã - ã¨ã¹ã±ã¼ãã·ã¼ã±ã³ã¹:
\bã\-ãæåã¯ã©ã¹ã¨ã¹ã±ã¼ããUnicode æåã¯ã©ã¹ã¨ã¹ã±ã¼ãããã®ä»ã®æåã¨ã¹ã±ã¼ãã
ãããã®æ§æã¯ä½åã§ã使ããã¨ãã§ãããããã表ãæåéåã¯çµåããã¾ããä¾ãã°ã/[a-zA-Z0-9]/ ã¯ä»»æã®æåãæ°åã«ä¸è´ãã¾ãã
æåã¯ã©ã¹ã®æ¥é è¾ ^ ã¯ãè£éåã¯ã©ã¹ãã使ãã¾ããä¾ãã°ã[^abc] 㯠aãbãc 以å¤ã®æåã«ä¸è´ãã¾ãã^ ã®æåã¯æåã¯ã©ã¹ã®éä¸ã«ç¾ããå ´åã¯ãªãã©ã«æåã«ãªãã¾ããä¾ãã°ã [a^b] 㯠aã^ãb ã«ä¸è´ãã¾ãã
å奿æ³ã¯æ£è¦è¡¨ç¾ãªãã©ã«ãã¨ã¦ãå¯å®¹ã«è§£éããæåã¯ã©ã¹å
ã«ç¾ãã / æåã§æ£è¦è¡¨ç¾ãªãã©ã«ãçµãããªãããã«ãã¾ãããã㯠/[/]/ ã / ãã¨ã¹ã±ã¼ãããªãã¦ãæå¹ã§ãããã¨ãæå³ãã¦ãã¾ãã
æåç¯å²ã®å¢çã«è¤æ°ã®æåãæå®ãããã¨ã¯ã§ãã¾ãããããã¯æåã¯ã©ã¹ã®ã¨ã¹ã±ã¼ãã使ç¨ããå ´åã«èµ·ããã¾ããä¾ãã°æ¬¡ã®ãããªãã®ã§ãã
/[\s-9]/u; // SyntaxError: Invalid regular expression: Invalid character class
Unicode é対å¿ã¢ã¼ãã§ã¯ã1 ã¤ã®å¢çãæåã¯ã©ã¹ã§ããæåç¯å²ã¯ã- ããªãã©ã«æåã«ãªãã¾ããããã¯ã¦ã§ãã®äºææ§ã®ããã«éæ¨å¥¨ã§ãã
/[\s-9]/.test("-"); // true
Unicode é対å¿ã¢ã¼ãã§ã¯ãæ£è¦è¡¨ç¾ã¯ BMP æååã¨ãã¦è§£éããã¾ãããã®ãããæåã¯ã©ã¹ã®ãµãã²ã¼ããã¢ã¯ 1 æåã§ã¯ãªã 2 æåã表ãã¾ãã
/[ð]/.test("\ud83d"); // true
/[ð]/u.test("\ud83d"); // false
/[ð-ð]/.test("ð"); // SyntaxError: Invalid regular expression: /[ð-ð]/: Range out of order in character class
/[ð-ð]/u.test("ð"); // true
ãã¿ã¼ã³ã大æåå°æåãç¡è¦ããå ´åã§ããç¯å²ã®ä¸¡ç«¯ã®å¤§æåå°æåã¯ãã©ã®æåããã®ç¯å²ã«å±ããããæ±ºå®ããä¸ã§éè¦ã§ããä¾ãã°ããã¿ã¼ã³ /[E-F]/i 㯠EãFãeãf ã«ã®ã¿ä¸è´ãã¾ããããã¿ã¼ã³ /[E-f]/i ã¯ãã¹ã¦ã®å¤§æåã¨å°æåã® ASCII æåï¼EâZ 㨠aâf ã«ã¾ãããããï¼ãããã³ [ã\ã]ã^ã_ã` ã«ä¸è´ãã¾ãã
v ã¢ã¼ãã§ãªãå ´åã®æåã¯ã©ã¹
v ã¢ã¼ãã§ãªãå ´åã®æåã¯ã©ã¹ã¯ãã»ã¨ãã©ã®æåãæåéãã«è§£éããæ ¼ç´ããæåã«é¢ããå¶éã¯ãã¾ãããã¾ãããä¾ãã°ã. ã¯ã¯ã¤ã«ãã«ã¼ãã§ã¯ãªãããããæåã®ãªãã©ã«ã§ããæåéãã«ç¾ãããã¨ãã§ããªãæåã¯ã\ã]ã- ã ãã§ãã
- æåã¯ã©ã¹ã§ã¯ã
\bã\Bã徿¹åç §ãé¤ããã»ã¨ãã©ã®ã¨ã¹ã±ã¼ãã·ã¼ã±ã³ã¹ã«å¯¾å¿ãã¦ãã¾ãã\bã¯åèªå¢çã®ä»£ããã«ããã¯ã¹ãã¼ã¹æåã示ããä»ã® 2 種é¡ã¯æ§æã¨ã©ã¼ãçºçãã¾ãã\ããªãã©ã«ã¨ãã¦ä½¿ç¨ãã¦ä½¿ç¨ããã«ã¯ã\\ã¨ã¨ã¹ã±ã¼ããã¦ãã ããã ]æåã¯æåã¯ã©ã¹ã®çµããã示ãã¾ãããªãã©ã«ã¨ãã¦ä½¿ç¨ããã«ã¯ã\]ã¨ã¨ã¹ã±ã¼ããã¦ãã ããã- ããã·ã¥ (
-) æåã¯ã2 ã¤ã®æåã®éã«ä½¿ç¨ããã¨ç¯å²ã示ãã¾ããæåã¯ã©ã¹ã®å é ãæ«å°¾ã«ç¾ããå ´åã¯ããªãã©ã«æåã§ããç¯å²ã®å¢çã§ä½¿ç¨ããå ´åããªãã©ã«æåã§ããä¾ãã°ã[a-]ã¯aã¨-ã«ä¸è´ãã[!--]ã¯!ãã-ã«ä¸è´ãã[--9]ã¯-ãã9ã«ä¸è´ãã¾ããã¾ããæåã©ããä»»æã®å ´æã§ä½¿ç¨ãããå ´åã¯ã\-ã§ã¨ã¹ã±ã¼ããããã¨ãã§ãã¾ãã
v ã¢ã¼ãæåã¯ã©ã¹
v ã¢ã¼ãã§ã¯æåã¯ã©ã¹ã®åºæ¬çãªèãæ¹ã¯å¤ããã¾ãããã»ã¨ãã©ã®æåããªãã©ã«ã使ç¨ãã¦ã- ã使ç¨ãã¦æåç¯å²ã表ããã¨ã¹ã±ã¼ãã·ã¼ã±ã³ã¹ã使ç¨ãããã¨ãã§ãã¾ããv ãã©ã°ã®æãéè¦ãªæ©è½ã® 1 ã¤ã¯ãæåã¯ã©ã¹å
ã§ã®ãã»ãã表è¨ãã§ããååè¿°ã¹ãããã«ãéå¸¸ã®æåã¯ã©ã¹ã¯ 2 ã¤ã®ç¯å²ãé£çµãããã¨ã§è«çåãçºçããããã¨ãã§ãã¾ããä¾ãã°ã[A-Z0-9] ã使ç¨ãã¦ãéå [A-Z] ã¨éå [0-9] ã®è«çåããæå³ãã¦ãã¾ãããããã交差ãå·®ã®ãããªæåéåã使ã£ãä»ã®å¦çã表ãç°¡åãªæ¹æ³ã¯ããã¾ããã
v ãã©ã°ã使ãã¨ã交差㯠&& ã§è¡¨ç¾ãããå·®éå㯠-- ã§è¡¨ç¾ããã¾ããã©ã¡ãããªãå ´åã¯è«çåã¨ãªãã¾ããã¾ã㯠-- ã® 2 ã¤ã®ãªãã©ã³ãã¯æåãæåã¨ã¹ã±ã¼ããæåã¯ã©ã¹ã¨ã¹ã±ã¼ããå¥ã®æåã¯ã©ã¹ã®ãããããåããã¨ãã§ãã¾ããä¾ãã°ããã¢ã³ãã¼ã¹ã³ã¢ã§ãªãåèªæåãã表ãã«ã¯ [ \w--_] ã使ããã¨ãã§ãã¾ããåãã¬ãã«ã®æ¼ç®åãæ··åãããã¨ã¯ã§ãã¾ãããä¾ãã°ã[\w&&[A-z]--_] ã¯æ§æã¨ã©ã¼ã«ãªãã¾ããããããæåã¯ã©ã¹ã¯å
¥ãåã«ãããã¨ãã§ããã®ã§ã[\w&&[[A-z]--_]] ã [[\w&&[A-z]]--_]ï¼ã©ã¡ãã [A-Za-z] ãæå³ãã¦ããï¼ã¨æ¸ããã¨ã§æç¤ºçã«ãããã¨ãã§ãã¾ããåæ§ã«ã[AB--C] ã¯ç¡å¹ãªã®ã§ã[A[B--C]]ï¼ããã¯åã« [AB] ãæå³ãã¦ããï¼ã¨æ¸ãå¿
è¦ãããã¾ãã
v ã¢ã¼ãã§ã¯ãUnicode æåã¯ã©ã¹ã¨ã¹ã±ã¼ã \p ã¯ãçµµæåã®ãããªå¯å¤é·ã®æååã¨ä¸è´ããããã¨ãã§ãã¾ãã対称æ§ã®ããã«ãéå¸¸ã®æåã¯ã©ã¹ãè¤æ°ã®æåã«ä¸è´ãããã¨ãã§ãã¾ããæåã¯ã©ã¹ã§ãæååãªãã©ã«ããæ¸ãã«ã¯ããã®æååã \q{...} ã§å²ã¿ã¾ããããã§å¯¾å¿ãã¦ããæ£è¦è¡¨ç¾æ§æã¯è«çåã®ã¿ã§ããããã¨ã¯å¥ã«ã\q ã§å®å
¨ã«ãªãã©ã«ï¼ã¨ã¹ã±ã¼ãæåãå«ãï¼ãå²ãå¿
è¦ãããã¾ããããã«ãããæåã¯ã©ã¹ã¯æéåã®å¯è½æ§ãæã¤å¯å¤é·æååã«ã®ã¿ä¸è´ãããã¨ãä¿è¨¼ãã¾ãã
æåã¯ã©ã¹ã®æ§æãããæ´ç·´ãããããã«ãªããããå¤ãã®æåãäºç´ãããæåéãã«ç¾ãããã¨ãç¦æ¢ããã¾ãã
]ã¨\ã«å ãã(ã)ã[ã{ã}ã/ã-ã|ã®æåã¯ãæåã¯ã©ã¹å ã§æåéãã«è¡¨ããå ´åãã¨ã¹ã±ã¼ãããå¿ è¦ãããã¾ãããã®ãªã¹ãã¯æ§ææåã®ãªã¹ãã¨å¤å°ä¼¼ã¦ãã¾ããã^ã$ã*ã+ã?ã¯æåã¯ã©ã¹å é¨ã§ã¯äºç´ããã¦ãããã/ã¨-ã¯æåã¯ã©ã¹å¤é¨ã§ã¯äºç´ããã¦ãã¾ããï¼/ã¯æ£è¦è¡¨ç¾ãªãã©ã«ãåºåãæåã¨ããå¯è½æ§ããããããã¨ã¹ã±ã¼ãããå¿ è¦ãããã¾ããï¼ããããã®æåã¯ãã¹ã¦ããªãã·ã§ã³ã§uã¢ã¼ãæåã¯ã©ã¹ã§ãã¨ã¹ã±ã¼ãã§ãã¾ãã- ãäºéåºåãè¨å·ãã·ã¼ã±ã³ã¹ã
&&ã!!ã##ã$$ã%%ã**ã++ã,,ã..ã::ã;;ã<<ã==ã>>ã??ã@@ã^^ã``ã~~ãåæ§ã«ã¨ã¹ã±ã¼ãããå¿ è¦ãããã¾ãï¼ãã ããvãã©ã°ããªãã¨ãã¾ãæå³ãããã¾ããï¼ãuã¢ã¼ãã§ã¯ããããã®æåã®ããã¤ãã¯æåã¯ã©ã¹å ã«ããç¾ãããã¨ã¹ã±ã¼ãããã¨æ§æã¨ã©ã¼ãçºçãã¾ããvã¢ã¼ãã§ã¯ããã¢ã§ç¾ããå ´åã¯ã¨ã¹ã±ã¼ãããªããã°ãªãã¾ããããåç¬ã§ç¾ããå ´åã¯ãªãã·ã§ã³ã§ã¨ã¹ã±ã¼ããããã¨ãã§ãã¾ããä¾ãã°ã/[\!]/uã¯èå¥ã¨ã¹ã±ã¼ããªã®ã§ç¡å¹ã§ããã/[\!]/vã¨/[!]/vã®ä¸¡æ¹ã¯æå¹ã§ã/[!!]/vã¯ç¡å¹ã§ãããªãã©ã«æååç §ã«ã¯ãã©ã®æåãã¨ã¹ã±ã¼ãã¾ãã¯ã¢ã³ã¨ã¹ã±ã¼ãããã¦ç¾ãããã®è©³ç´°ãªè¡¨ãããã¾ãã
è£éåæåã¯ã©ã¹ [^...] 㯠1 æåããé·ãæååã¨ä¸è´ãããã¨ã¯ã§ãã¾ããã ä¾ãã°ã[\q{ab|c}] ã¯æå¹ã§æåå "ab" ã¨ä¸è´ãã¾ããã[^\q{ab|c}] ã¯ä½æåãæ¶è²»ããããã䏿ãªã®ã§ç¡å¹ã§ãããã®ãã§ãã¯ã¯ããã¹ã¦ã® \q ãåä¸ã®æåãæ ¼ç´ãããã¹ã¦ã® \p ãæåããããã£ãæå®ãã¦ãããã©ããã調ã¹ããã¨ã§è¡ããã¾ããåéåã®å ´åããªãã©ã³ãã¯ãã¹ã¦ç´ç²ãªæåã§ãªããã°ãªãã¾ããã交差ã®å ´åãå°ãªãã¨ã 1 ã¤ã®ãªãã©ã³ãã¯ç´ç²ãªæåã§ãªããã°ãªãã¾ãããå·®éåã®å ´åã左端ã®ãªãã©ã³ãã¯ç´ç²ãªæåã§ãªããã°ãªãã¾ãããã¤ã¾ãã/[^q{ab|c}--q{ab}]/v 㯠/[^c]/v ã¨ç価ã§ãããæå¦ããã¾ãã
è£éåã¯ã©ã¹ã¨å¤§æåå°æåãåºå¥ããªãç §å
v ã¢ã¼ãã§ãªãå ´åãè£éåæåã¯ã©ã¹ [^...] ã¯åç´ã«ç
§åçµæãå転ããããã®ã¨ãã¦å®è£
ããã¦ãã¾ããã¤ã¾ãã[...] ãä¸è´ããªãå ´åã¯å¸¸ã« [^...] ãä¸è´ãããã®éãåæ§ã§ãããããã\P{...} ã \W ã®ãããªä»ã®è£éåã¯ã©ã¹ã¯ãæå®ããããããã£ãæããªããã¹ã¦ã®æåãããªãéåãç¬èªã«è¨å®ãããã¨ã§åä½ãã¾ãããããã¯åãåä½ãããããã«è¦ãã¾ããã大æåã¨å°æåãåºå¥ããç
§åã¨ä¸è´ããã¨ããè¤éã«ãªãã¾ãã
以ä¸ã® 2 ã¤ã®æ£è¦è¡¨ç¾ãèãã¦ã¿ã¾ãããã
const r1 = /\p{Lowercase_Letter}/iu;
const r2 = /[^\P{Lowercase_Letter}]/iu;
r2 ã¯äºéå¦å®ã§ãr1 ã¨ç価ã®ããã«è¦ãã¾ããããããå®éã«ã¯ r1 ã¯å°æåã¨å¤§æåã® ASCII æåãã¹ã¦ã«ä¸è´ãã¾ãããr2 ã¯ä¸è´ãã¾ãããã©ã®ããã«åä½ããã®ãã説æããããã«ãUnicode æåéåå
¨ä½ã§ã¯ãªããASCII æåã ããæ±ã£ã¦ããã¨ä»®å®ããr1 㨠r2 ãä¸è¨ã®ããã«æå®ãã¦ã¿ã¾ãããã
const r1 = /[a-z]/iu;
const r2 = /[^A-Z]/iu;
大æåå°æåãåºå¥ããªãç
§åã¯ããã¿ã¼ã³ã¨å
¥åãåã大æåå°æåã«å¤æãããã¨ã«ãã£ã¦è¡ããã¾ãï¼è©³ç´°ã¯ ignoreCase ãåç
§ãã¦ãã ããï¼ãr1 ã®å ´åãæåã¯ã©ã¹ a-z ã¯å¤§æåå°æåãåºå¥ããå¾ãåãã¾ã¾ã§ããã大æåã¨å°æåã® ASCII æååã®å
¥åã¯å°æåã«å¤æãããã®ã§ã r1 㯠"A" 㨠"a" ã®ä¸¡æ¹ã«ä¸è´ãããã¨ãã§ãã¾ããr2 ã®å ´åãæåã¯ã©ã¹ A-Z 㯠a-z ã«å¤æããã¾ããã^ ã¯ç
§åçµæãå¦å®ããã®ã§ãå®è³ªçã« [^A-Z] ã¯å¤§æåã®æååã«ã®ã¿ä¸è´ãã¾ãããããã大æåã¨å°æåã® ASCII æååã®å
¥åã¯å°æåã«å¤æãããã¾ã¾ãªã®ã§ãr2 ã¯ä½ã«ãä¸è´ãã¾ããã
v ã¢ã¼ãã§ã¯ããã®åä½ã¯ä¿®æ£ããã¾ããã[^...] ãä¸è´ããçµæãå¦å®ãã代ããã«ãè£éåã¯ã©ã¹ãè²ªæ¬²ã«æ§ç¯ãã¾ããããã«ããã[^\P{Lowercase_Letter}] 㨠\p{Lowercase_Letter} ã¯å³å¯ã«ç価ã«ãªãã¾ãã
ä¾
>16 鲿°ã®æ¡ã¨ã®ç §å
次ã®é¢æ°ã¯ãæååãæå¹ãª 16 鲿°ãæ ¼ç´ãã¦ãããã©ãããå¤å®ãã¾ãã
function isHexadecimal(str) {
return /^[0-9A-F]+$/i.test(str);
}
isHexadecimal("2F3"); // true
isHexadecimal("beef"); // true
isHexadecimal("undefined"); // false
交差ã®ä½¿ç¨
次ã®é¢æ°ã¯ã®ãªã·ã£èªã®æåã«ä¸è´ãã¾ãã
function greekLetters(str) {
return str.match(/[\p{Script_Extensions=Greek}&&\p{Letter}]/gv);
}
// ð is U+1018A GREEK ZERO SIGN
greekLetters("ÏðP0é¶Î±AΣ"); // [ 'Ï', 'α', 'Σ' ]
å·®éåã®ä½¿ç¨
以ä¸ã®é¢æ°ã¯ãé ASCII ã®æ°åã«ä¸è´ãã¾ãã
function nonASCIINumbers(str) {
return str.match(/[\p{Decimal_Number}--[0-9]]/gv);
}
// ð¹ is U+11739 AHOM DIGIT NINE
nonASCIINumbers("ð0é¶1ðð¹a"); // [ 'ð', 'ð¹' ]
æååã®ç §å
以ä¸ã®é¢æ°ã¯ãæ¹è¡æåã \r\n (CRLF) ã·ã¼ã±ã³ã¹ãå«ããã¹ã¦ã®è¡æ«ã·ã¼ã±ã³ã¹ã«ä¸è´ãã¾ãã
function getLineTerminators(str) {
return str.match(/[\r\n\u2028\u2029\q{\r\n}]/gv);
}
getLineTerminators(`
A poem\r
Is split\r\n
Into many
Stanzas
`); // [ '\r', '\r\n', '\n' ]
ãã®ä¾ã¯ãçãã¨ããç¹ãé¤ãã° /(?:\r|\n|\u2028|\u2029|\r\n)/gu or /(?:[\r\n\u2028\u2029]|\r\n)/gu ã¨ã¾ã£ããåãã§ãã
\q{} ã®æãæçãªç¨éã¯ãå·®åã¨äº¤å·®ãè¡ãå ´åã§ããååã¾ã§ã¯è¤æ°ã®å
èªã¿ã§ä½¿ç¨å¯è½ã§ããã以ä¸ã®é¢æ°ã¯ã¢ã¡ãªã«ãä¸å½ããã·ã¢ãã¤ã®ãªã¹ããã©ã³ã¹ã®ã©ãã§ããªã彿ã«ä¸è´ãã¾ãã
function notUNSCPermanentMember(flag) {
return /^[\p{RGI_Emoji_Flag_Sequence}--\q{ðºð¸|ð¨ð³|ð·ðº|ð¬ð§|ð«ð·}]$/v.test(flag);
}
notUNSCPermanentMember("ðºð¸"); // false
notUNSCPermanentMember("ð©ðª"); // true
ãã®ä¾ã¯ããããããã£ã¨å¹çãè¯ãã¨ãã以å¤ã¯ã/^(?!ðºð¸|ð¨ð³|ð·ðº|ð¬ð§|ð«ð·)\p{RGI_Emoji_Flag_Sequence}$/v ã¨ã»ã¼åãã§ãã
仿§æ¸
| 仿§æ¸ |
|---|
| ECMAScript® 2027 Language Specification > # prod-CharacterClass > |
ãã©ã¦ã¶ã¼ã®äºææ§
é¢é£æ å ±
- æåã¯ã©ã¹
- æ£è¦è¡¨ç¾ãªãã¡ã¬ã³ã¹
- æåã¯ã©ã¹ã¨ã¹ã±ã¼ã:
\d,\D,\w,\W,\s,\S - Unicode æåã¯ã©ã¹ã¨ã¹ã±ã¼ã:
\p{...},\P{...} - ãªãã©ã«æå:
a,b - æåã¨ã¹ã±ã¼ã:
\n,\u{...} - è«çå:
| - RegExp v flag with set notation and properties of strings on v8.dev (2022)