ãã®ããŒã«ã®æ©èœ
æ£èŠè¡šçŸã¯ãªãŒããŒã¯ãæ£èŠè¡šçŸã䜿ã£ãŠããã¹ããåé€ãŸãã¯çœ®æããŸãã1ã€ä»¥äžã®ãã¿ãŒã³ãå ¥åïŒåãã¿ãŒã³ã¯é çªã«é©çšïŒãã¿ãŒã³1ã®åºåããã¿ãŒã³2ã®å ¥åã«ïŒãäžèŽãåé€ãããã«ã¹ã¿ã ããã¹ãã§çœ®æãããéžæãé©çšåã«åãã¿ãŒã³ãæ€èšŒïŒç¡å¹ãªæ£èŠè¡šçŸã¯å€±æããã«ãŒã«ã®äžã«ã€ã³ã©ã€ã³ãšã©ãŒã衚瀺ãããŒã¿ã®ã¯ãªãŒãã³ã°ãäžèŠæåã®é€å»ãäžæ¬ããã¹ã倿ã«äŸ¿å©ã§ãã
äœ¿ãæ¹
- ããã¹ããå ¥å â åŠçããããã¹ãã貌ãä»ããŸãã¯å ¥åã
- ãã¿ãŒã³ã远å â æ£èŠè¡šçŸãå
¥åïŒäŸïŒ
\d+ã§æ°åã\s+ã§ç©ºçœïŒãããã¿ãŒã³ã远å ãã§è€æ°ã«ãŒã«ããã§ãŒã³ã - 眮æïŒãªãã·ã§ã³ïŒ â 空ã®ãŸãŸãªãäžèŽãåé€ãåãã¿ãŒã³ããšã«çœ®æããã¹ããå ¥åã
- ãã©ã°ãèšå® â ã°ããŒãã«ïŒgïŒã倧æåå°æåç¡èŠïŒiïŒãªã©ãå šãã¿ãŒã³ã§å ±éã
- é©çš â ã¯ãªãã¯ããŠå®è¡ïŒãŸãã¯Liveã¢ãŒã䜿çšïŒãç¡å¹ãªãã¿ãŒã³ã¯å€±æããã«ãŒã«ã®äžã«ãšã©ãŒã衚瀺ã
åäœã®ä»çµã¿
åãã¿ãŒã³ã¯äœ¿çšåã« new RegExp() ã§æ€èšŒããã¿ãŒã³ã¯é 次é©çšïŒã«ãŒã«Nã®åºåãã«ãŒã«N+1ã®å
¥åã«ããã¿ãŒã³ãç¡å¹ãªå Žåããã§ãŒã³ã¯åæ¢ãéšååºåãšå€±æããã«ãŒã«ã®äžã«ãšã©ãŒã衚瀺ããã¹ãŠã®åŠçã¯ã¯ã©ã€ã¢ã³ãåŽã
ãã¹ãŠã®èšç®ã¯ãã©ãŠã¶å ã§å®è¡ãããŸããããŒã¿ã¯ãµãŒããŒã«éä¿¡ãããŸããã
䜿çšäŸãšãµã³ãã«
- ããŒã¿ã¯ãªãŒãã³ã° â äœåãªç©ºçœãæ¹è¡ãç¹æ®æåãåé€ã
- æœåº â ãã£ããã£ã°ã«ãŒãã§æœåºããŠçœ®æïŒäŸïŒæ¥ä»ã® reformatïŒã
- æ£èŠå â ããªã¢ã³ãã眮æïŒäŸïŒè€æ°ã¹ããŒã¹âåäžã¹ããŒã¹ïŒã
- ããŒã¯ã¢ããé€å» â HTMLã¿ã°ããã®ä»ã®ããŒã¯ã¢ãããåé€ã
- CSVã¯ãªãŒãã³ã° â åºåãæåããšã¹ã±ãŒãã·ãŒã±ã³ã¹ãä¿®æ£ã
äŸ
- ãã¿ãŒã³
\s+ã眮æâ è€æ°ã¹ããŒã¹ã1ã€ã«ãŸãšããã - ãã¿ãŒã³
\d{3}-\d{3}-\d{4}ã眮æ[REDACTED]â é»è©±çªå·ãé ãã - ãã¿ãŒã³
[^\w\s]ã眮æç©º â ãã¹ãŠã®å¥èªç¹ãé€å»ã
å¶éãšæ¢ç¥ã®å¶çŽ
- ãã¿ãŒã³ã¯å ã«æ€èšŒ â ç¡å¹ãªæ£èŠè¡šçŸã¯ãšã©ãŒã衚瀺ïŒçœ®æã¯è©Šè¡ãããªãã
- ReDoS â éåžžã«è€éãªãã¿ãŒã³ã¯é ãå®è¡ã®åå ã«ãªãå ŽåããïŒç Žæ» çããã¯ãã©ããã³ã°ãé¿ããããšã
- é æ¬¡ãã§ãŒã³ â è€æ°ãã¿ãŒã³ã¯é çªã«é©çšïŒåã«ãŒã«ã¯åã®ã«ãŒã«ã®åºåãåŠçã
- JavaScriptæ£èŠè¡šçŸ â JSæ£èŠè¡šçŸãã¬ãŒããŒã䜿çšïŒäžéšã®PCREæ©èœã¯ç°ãªãå Žåããã