æåã¯ã©ã¹ã¯ãæåãæ°åã®åºå¥ãªã©ãæåã®ç¨®é¡ãåºå¥ãã¾ãã
試ãã¦ã¿ã¾ãããconst chessStory = "He played the King in a8 and she moved her Queen in c2.";
const regexpCoordinates = /\w\d/g;
console.log(chessStory.match(regexpCoordinates));
// Expected output: Array [ 'a8', 'c2']
const moods = "happy ð, confused ð, sad ð¢";
const regexpEmoticons = /[\u{1F600}-\u{1F64F}]/gu;
console.log(moods.match(regexpEmoticons));
// Expected output: Array ['ð', 'ð', 'ð¢']
ç¨®é¡ æå æå³ [xyz]
[a-c]
æåã¯ã©ã¹: å²ãã æåã®ããããã«ä¸è´ãã¾ãããã¤ãã³ã使ç¨ãã¦æåã®ç¯å²ãæå®ãããã¨ãã§ãã¾ããããã¤ãã³ãè§æ¬å¼§ã§å²ã¾ããæåã¾ãã¯æå¾ã®æåã¨ãã¦ç¾ããå ´åãããã¯éå¸¸ã®æåã¨ãã¦æåã¯ã©ã¹ã«å«ããããã®ãªãã©ã«ãã¤ãã³ã¨è¦ãªããã¾ãã
ä¾ãã°ã [abcd]
㯠[a-d]
ã¨åãã§ãã "brisket" ã® "b" ã "chop" ã® "c" ã«ä¸è´ãã¾ãã
ä¾ãã°ã [abcd-]
㨠[-abcd]
㯠"brisket" ã® "b"ã "chop" ã® "c"ããã㦠"non-profit" ã® "-" ï¼ãã¤ãã³ï¼ã«ä¸è´ãã¾ãã
ä¾ãã°ã [\w-]
㯠[A-Za-z0-9_-]
ã¨åãã§ããã©ã¡ãã "brisket" ã® "b"ã "chop" ã® "c"ã "non-profit" ã® "n" ã«ä¸è´ãã¾ãã
unicodeSets
ãã©ã° (v
) ãæå¹ãªå ´åãæåã¯ã©ã¹ã«ã¯ããã¤ãã®æ©è½ã追å ããã¾ãã詳ããã¯æåã¯ã©ã¹åç
§ãåç
§ãã¦ãã ããã
[^xyz]
[^a-c]
å¦å®æåã¯ã©ã¹: è§æ¬å¼§ã§å²ã¾ãã¦ãããã®ã§ã¯ãªããã®å
¨ã¦ã«ä¸è´ãã¾ãããã¤ãã³ã使ç¨ãã¦æåã®ç¯å²ãæå®ãããã¨ãã§ãã¾ããããã¤ãã³ã ^
ã®å¾ã®æåã®æåãã¾ãã¯è§æ¬å¼§ã§å²ã¾ããæå¾ã®æåã¨ãã¦ç¾ããå ´åãããã¯éå¸¸ã®æåã¨ãã¦æåã¯ã©ã¹ã«å«ããããã«ãªãã©ã«ãã¤ãã³ã¨è§£éããã¾ãã ä¾ãã°ã[^abc]
㯠[^a-c]
ã¨åãã§ãããããã¯ãæå㯠"bacon" ã® "o" ã "chop" ã® "h" ã«ä¸è´ãã¾ãã
ã¡ã¢: ^ ã®æåã¯å ¥åã®å é ãæå³ãããã¨ãããã¾ãã
.
ã¯ã¤ã«ãã«ã¼ã: æ¹è¡æå (\n
ã\r
ã\u2028
ã\u2029
) ãé¤ããããã 1 æåã¨ä¸è´ãã¾ãã ä¾ãã°ã/.y/
㯠"my" 㨠"ay" ã«ä¸è´ã¾ããã"yes make my day" ã® "yes" ã«ã¯ä¸è´ãã¾ããã dotAll
ãã©ã° (s) ãæå¹ãªå ´åã¯ãæ¹è¡æåã«ãä¸è´ãã¾ãã æåã¯ã©ã¹å
ã§ã¯ .
ã¯ãã®ç¹å¥ãªæå³ã失ããæåéãã® "." ã¨ä¸è´ãã¾ãã
\d
æ°åæåã¯ã©ã¹ã¨ã¹ã±ã¼ã: ããããï¼ã¢ã©ãã¢ï¼æ°åã«ä¸è´ãã¾ãã[0-9]
ã«ç¸å½ãã¾ããä¾ãã° /\d/
ã /[0-9]/
㯠"B2 is the suite number" ã® "2" ã«ä¸è´ãã¾ãã
\D
éæ°åæåã¯ã©ã¹ã¨ã¹ã±ã¼ã: ããããï¼ã¢ã©ãã¢ï¼æ°å以å¤ã®æåã«ä¸è´ãã¾ãã[^0-9]
ã«ç¸å½ãã¾ããä¾ãã° /\D/
ã /[^0-9]/
㯠"B2 is the suite number" ã® "B" ã«ä¸è´ãã¾ãã
\w
è±æ°æåã¯ã©ã¹ã¨ã¹ã±ã¼ã: ã¢ã³ãã¼ã¹ã³ã¢ãå«ãããããåè§è±æ°åï¼åºæ¬ã©ãã³ã¢ã«ãã¡ãããï¼ã«ä¸è´ãã¾ãã [A-Za-z0-9_]
ã«ç¸å½ãã¾ããä¾ãã° /\w/
ã¯ã"apple" ã® "a"ã"$5.28" ã® "5"ã"3D" ã® "3"ã"Ãmanuel" ã® "e" ã«ä¸è´ãã¾ãã
\W
éè±æ°æåã¯ã©ã¹ã¨ã¹ã±ã¼ã: åºæ¬ã©ãã³ã¢ã«ãã¡ãããã®æå以å¤ã«ä¸è´ãã¾ãã [^A-Za-z0-9_]
ã¨åçã§ããä¾ãã° /\W/
ã /[^A-Za-z0-9_]/
ã¯ã"50%" ã® "%" ã "Ãmanuel" ã® "Ã" ã«ä¸è´ãã¾ãã
\s
ãã¯ã¤ãã¹ãã¼ã¹æåã¯ã©ã¹ã¨ã¹ã±ã¼ã: ãã¯ã¤ãã¹ãã¼ã¹æåãä¾ãã°ç©ºç½ãã¿ããæ¹ãã¼ã¸ãæ¹è¡ããã®ä»ã® Unicode ç©ºç½æåãªã©ã® 1 æåã«ä¸è´ãã¾ãã [\f\n\r\t\v\u0020\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]
ã«ç¸å½ãã¾ããä¾ãã° /\s\w*/
㯠"foo bar" ã® "bar" ã«ä¸è´ãã¾ãã
\S
éãã¯ã¤ãã¹ãã¼ã¹æåã¯ã©ã¹ã¨ã¹ã±ã¼ã: ãã¯ã¤ãã¹ãã¼ã¹ä»¥å¤ã® 1 æåã«ä¸è´ãã¾ãã [^\f\n\r\t\v\u0020\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]
ã«ç¸å½ãã¾ãã ä¾ãã° /\S\w*/
㯠"foo bar" ã® "foo" ã«ä¸è´ãã¾ãã
\t
æ°´å¹³ã¿ãã«ä¸è´ãã¾ãã \r
復帰æåã«ä¸è´ãã¾ãã \n
è¡éãæåã«ä¸è´ãã¾ãã \v
åç´ã¿ãã«ä¸è´ãã¾ãã \f
æ¹ãã¼ã¸ã«ä¸è´ãã¾ãã [\b]
å¾éæåã«ä¸è´ãã¾ããåèªå¢çã¢ãµã¼ã·ã§ã³ (\b
) ã«ã¤ãã¦ã¯ã¢ãµã¼ã·ã§ã³ãåç
§ãã¦ãã ããã \0
NUL æåã«ä¸è´ãã¾ãããã®å¾ãã«ä»ã®æ°åãç¶ãã¦ã¯ããã¾ããã \cX
ãã£ã¬ããè¨æ³ã使ç¨ããå¶å¾¡æåã«ä¸è´ãã¾ãã "X" ã«ã¯ AâZ ã®æåãå
¥ãã¾ãï¼ã³ã¼ããã¤ã³ãU+0001
âU+001A
ã«å¯¾å¿ãã¾ãï¼ãä¾ãã° /\cM\J/
㯠"\r\n" ã«ä¸è´ãã¾ãã
\xhh
hh
ï¼2 æ¡ã® 16 鲿°ï¼ã³ã¼ããããªãæåã«ä¸è´ãã¾ãã \uhhhh
hhhh
ï¼4 æ¡ã® 16 鲿°ï¼ã®å¤ãããªã UTF-16 ã³ã¼ãã¦ãããã«ä¸è´ãã¾ãã \u{hhhh}
ã¾ã㯠\u{hhhhh}
ï¼u
ãã©ã°ãã»ãããããæã®ã¿ï¼ U+hhhh
ã¾ã㯠U+hhhhh
(16 鲿°) Unicode å¤ãããªãæåã«ä¸è´ãã¾ãã \p{UnicodeProperty}
, \P{UnicodeProperty}
Unicode æåã¯ã©ã¹ã¨ã¹ã±ã¼ã: Unicode æåããããã£ã«åºã¥ããæåã«ä¸è´ãã¾ããä¾ãã°ãçµµæåãæ¥æ¬èªã®ã«ã¿ã«ããä¸å½èªãæ¥æ¬èªã®æ¼¢åãªã©ã§ãã
\
æ¬¡ã®æåãç¹å¥ã«æ±ããã¨ããã¨ã¹ã±ã¼ãããããã¨ã示ãã¾ãã ãã®æ¯ãèãã¯ã2 éãã®ãã¡ã®ã©ã¡ãã 1 ã¤ã§ãã
/b/
ã¯æå "b" ã«ä¸è´ãã¾ããããã "b" ã®åã«ããã¯ã¹ã©ãã·ã¥ãç½®ã㦠/\b/
ã¨ããã¨ãåèªåºåããæå³ããããã«ãªãã¾ãã/a*/
㯠0 å以ä¸ã® "a" ã¨ä¸è´ãã¾ãã *
ã¨æåéãã«ç
§åããã«ã¯ããã®ç´åã«ããã¯ã¹ã©ãã·ã¥ãå
¥ãã¾ããä¾ãã°ã/a\*/
㯠"a*" ã¨ä¸è´ãã¾ããã¡ã¢: ãã®æåãæåéãã«ä¸è´ãããã«ã¯ãããèªèº«ãã¨ã¹ã±ã¼ããã¦ãã ãããã¤ã¾ãã \
ãæ¤ç´¢ããã«ã¯ /\\/
ã使ã£ã¦ãã ããã
x|y
è«çå: "x" ã¾ã㯠"y" ã«ä¸è´ãã¾ãããã¤ã (|
) ã§åºåãããåæåã¯ãä»£æ¿ (alternative)ã¨å¼ã°ãã¾ãã ä¾ãã°ã/green|red/
㯠"green apple" ã® "green" 㨠"red apple" ã® "red" ã«ä¸è´ãã¾ãã
ã¡ã¢: è«çåã¯ã鏿è¢ã®éåããæå®ããããä¸ã¤ã®æ¹æ³ã§ãããæåã¯ã©ã¹ã§ã¯ããã¾ãããè«çåã¯ç¬ç«ãããã®ã§ã¯ããã¾ããã大ããªãã¿ã¼ã³ã®ä¸é¨ã«ããããã«ã¯ã°ã«ã¼ãã使ç¨ããå¿
è¦ãããã¾ãã[abc]
ã¯æ©è½çã«ã¯ (?:a|b|c)
ã¨ç価ã§ãã
ãã®ä¾ã§ã¯ã4 æ¡ã®æ°ååã \d{4}
ã§ç
§åãã¾ãã\b
㯠åèªå¢çã示ãã¾ãï¼ã¤ã¾ããæ°åã®éä¸ããç
§åãå§ãããçµäºãããããªãï¼ã
const randomData = "015 354 8787 687351 3512 8735";
const regexpFourDigits = /\b\d{4}\b/g;
console.table(randomData.match(regexpFourDigits));
// ['8787', '3512', '8735']
ãã以å¤ã®ä¾ã¯æåã¯ã©ã¹ã¨ã¹ã±ã¼ããªãã¡ã¬ã³ã¹ãåç §ãã¦ãã ããã
A ããå§ã¾ãï¼ã©ãã³ã¢ã«ãã¡ãããã®ï¼åèªãæ¢ããã®ä¾ã§ã¯ãA ã§å§ã¾ãåèªãç
§åãã¾ãã\b
ã¯åèªå¢çï¼åèªã®éä¸ããç
§åãå§ããªãï¼ã示ãã¾ãã[aA]
ã¯æå "a" ã¾ã㯠"A" ã示ãã¾ãã\w+
ã¯ã©ãã³ã¢ã«ãã¡ãããã®ä»»æã®æåãè¤æ°å示ãã¾ãï¼+
ã¯æ°éåã§ãï¼ããªãããã§ã«åèªã®æåããªããªãã¾ã§ç
§åããã®ã§ãæ«å°¾ã® \b
å¢çã¯å¿
è¦ããã¾ããã
const aliceExcerpt =
"I'm sure I'm not Ada,' she said, 'for her hair goes in such long ringlets, and mine doesn't go in ringlets at all.";
const regexpWordStartingWithA = /\b[aA]\w+/g;
console.table(aliceExcerpt.match(regexpWordStartingWithA));
// ['Ada', 'and', 'at', 'all']
ãã以å¤ã®ä¾ã¯æåã¯ã©ã¹ã¨ã¹ã±ã¼ããªãã¡ã¬ã³ã¹ãåç §ãã¦ãã ããã
ï¼Unicode æåã®ï¼åèªãæ¢ãåèªã表ãããã«ãã©ãã³ã¢ã«ãã¡ãããã§ã¯ãªãã Unicode æåã®ç¯å²ã使ç¨ãããã¨ãã§ãã¾ããï¼ã¤ã¾ãããã·ã¢èªãã¢ã©ãã¢èªã®ãããªä»ã®è¨èªã®ããã¹ããæ±ããã¨ãã§ãã¾ããï¼ Unicode ã® ãåºæ¬å¤è¨èªé¢ãã«ã¯ãä¸çä¸ã§ä½¿ããã¦ããã»ã¨ãã©ã®æåãå«ã¾ãã¦ããããããã®æåã§æ¸ãããåèªã«ãããããããã®æåã¯ã©ã¹ã¨ç¯å²ãå©ç¨ã§ãã¾ãã
const nonEnglishText = "ÐÑиклÑÑÐµÐ½Ð¸Ñ ÐлиÑÑ Ð² СÑÑане ÑÑдеÑ";
const regexpBMPWord = /([\u0000-\u0019\u0021-\uFFFF])+/gu;
// U+0000 ãã U+FFFF ã¾ã§ã® BMPããã ããU+0020 ã¯ç©ºç½
console.table(nonEnglishText.match(regexpBMPWord));
["ÐÑиклÑÑениÑ", "ÐлиÑÑ", "в", "СÑÑане", "ÑÑдеÑ"];
ãã以å¤ã®ä¾ã¯ Unicode æåã¯ã©ã¹ã¨ã¹ã±ã¼ããªãã¡ã¬ã³ã¹ãåç §ãã¦ãã ããã
æ¯é³ãæ°ãããã®ä¾ã§ã¯ãæ¯é³ (A, E, I, O, U, Y) ã§å§ã¾ãåèªãæ°ãã¾ãã g
ãã©ã°ã¯ãããã¹ãä¸ã«åºç¾ãããã¹ã¦ã®ãã¿ã¼ã³ã«ä½¿ç¨ãã¾ãã i
ãã©ã°ã¯ãã¿ã¼ã³ã大æåã¨å°æåãåºå¥ããªãããã«ããããã«ä½¿ç¨ãã大æåã®æ¯é³ã¨å°æåã®æ¯é³ã®ä¸¡æ¹ã«ä¸è´ãã¾ãã
const aliceExcerpt =
"There was a long silence after this, and Alice could only hear whispers now and then.";
const regexpVowels = /[aeiouy]/gi;
console.log("æ¯é³ã®æ°:", aliceExcerpt.match(regexpVowels).length);
// æ¯é³ã®æ°: 26
é¢é£æ
å ±
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4