ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[Âà¶K] Regexp ¬O¤°麽¡H

[Âà¶K] Regexp ¬O¤°麽¡H

¥»©«³Ì«á¥Ñ sunnyso ©ó 2013-8-22 10:16 ½s¿è

µù¡G³o¬O¥H«esave¤U¨Ó¾Ç²ß¥Îªº.

§Ñ°O¥X³B¤F, ­ì§@ªÌ½Ð¨£½Ì. Åwªï¦U¦ìª¾¹D¥X³Bªº¸É§¹. ¥H¥Ü¹ï­ì§@ªÌªº´L­«


Regexp ¬O¤@²Õ¤j¬ù¤T¥|¤Q­Ó¯S®í²Å¸¹, ¥u­n¾Ç·|¨ä¤¤±`¥Î¤G¤Q¨Ó­Ó, ´N¯à·j´M¦r¦ê/¥N´«¦r¦ê, ¬Æ¦Ü§¹¦¨³\¦h·Æ¹«¿ï³æ°µ¤£¨ìªºÅå©_ÁcÂø¤u§@¡C ¥H¤UÁ|¤@¨Ç¨Ò¤l; ¬°Åý±z±Mª`©ó regexp ¥»¨­, ¼È®É¤£¼g¥X§¹¾ãªº«ü¥O, ¥u¼g¥X«ü¥O¤¤Ãö©ó regexp ªº¨º¤@¤p¬q¡C

1.
­^¤åªº "ÃC¦â" ¤@¦r, ¦³¨âºØ«÷ªk: color ¤Î colour¡C ¥Î regexp ªí¹F, ¥i¥H¤@¥Û¨â³¾: colou?r ¨ä¤¤ªº ? ªí¥Ü ¡u«e­±ªº¦r¤¸¥i¦³¥iµL¡v
·Q­n§ä "port" »P "ports", ¦ý¤S¤£§Æ±æ§ä¨ì "export", "portable", "important" µ¥µ¥¤@¤j°ï¤£¬ÛÃöªº³æ¦r, ¸Ó«ç»ò¿ì? ¥Î \bports?\b ³o¸Ìªº \b ªí¥Ü ¡u(¤å¼Æ¦r vs. ¼ÐÂI²Å¸¹µ¥µ¥¨ä¥L¦r¤¸ ¤§¶¡ªº) Ãä¬É (boundary); ®ÇÃ䤣¥i¦³¨ä¥L¤å¼Æ¦r¡v¡C ©Ò¿×¤å¼Æ¦r, ´N¬O­^¤å¦r¥À, ¼Æ¦r, ¤Î©³½u "_"¡C

2.
¦b¤@½g¤å³¹·í¤¤, §ì¥X©Ò¦³ ¡u¬Ý°_¨Ó¹³¬O¾÷³õ¥N½Xªº¦r¦ê¡v (¨Ò¦p TPE »O¥_, KHH °ª¶¯, LAX ¬¥§üÁF, ... µ¥µ¥): \b[A-Z][A-Z][A-Z]\b¡C ³o¸Ìªº [A-Z] ¬O [ABCDEFGHIJKLMNOPQRSTUVWXYZ] ªºÂ²¼g, ·N«ä¬O ¡u¥ô¦ó¤@­Ó¤j¼g¦r¥À¡v
ss

¦^´_ 4# p212


    ÁÂÁ¤G¦ì¤j¤j¡C
¤p§Ì·|­É¦¹¾÷·|¦n¦n¾Ç²ß¡A
¾Ç¨ì¤F¯uªº·|Åý¤H²×¥Í¨ü¥Î¡C

·P®¦¤G¦ì¤j¤j¡I

TOP

¦^´_ 4# p212

´N¬O³o­Ó
¤@­Ó«Ü¦nªººô¯¸,­È±o¤@¬Ý
ss

TOP

¦^´_ 3# sunnyso
ÁÂÁÂsunnyso¤j´£¨Ñ¾Ç²ß°T®§
¸Ó¤å³¹¥X³B¬O¤£¬O³o©O¡H
http://www.cyut.edu.tw/~ckhung/b/re/

TOP

¥»©«³Ì«á¥Ñ sunnyso ©ó 2013-8-22 10:14 ½s¿è

³o¬O¥H«esave¤U¨Ó¾Ç²ß¥Îªº.

§Ñ°O¥X³B¤F, ­ì§@ªÌ½Ð¨£½Ì. Åwªï¦U¦ìª¾¹D¥X³Bªº¸É§¹. ¥H¥Ü¹ï­ì§@ªÌªº´L­«.
ss

TOP

¥»©«³Ì«á¥Ñ sunnyso ©ó 2013-8-22 10:11 ½s¿è

4.
¦p¦ó¦b¤@¤j¤ù¤å¦r, »È¦æ±b¸¹, «H¥Î¥d¸¹... ·í¤¤, §ä¥X¬Ý¨Ó¹³¬O¦æ°Ê¹q¸Ü¸¹½Xªº¦r¦ê, ¨Ò¦p 0912345678 ©Î¬O 0912-345678 ©Î¬O 0912-345-678 ¤§Ãþªº? 09\d\d-?\d\d\d-?\d\d\d ³o¸Ìªº \d ¬O [0-9] ªºÂ²¼g, ³o¤S¬O [0123456789] ªºÂ²¼g, ·N«ä¬O ¡u¥ô¦ó¤@­Ó¼Æ¦r¦r¤¸¡v

5.
·Q­n§ä¤@²Õ¼Æ¦r ip (¨Ò¦p 168.95.1.1 ©Î 163.17.57 ¤§Ãþªº) ¦L¶H¤¤¦b¬Y­ÓÀɮפº´¿¬Ý¹L, ¦ý¬J¤£°O±oºë½Tªº¼Æ¦r, ¤]¤£°O±o¦b¨º­ÓÀɮ׬ݹL, ¸Ó«ç»ò¿ì? ¥i¥H·j´M \d+\.\d+\.\d+\.\d+ §ì¥X©Ò¦³¼Æ¦r ip¡C ³o¸Ìªº + ªí¥Ü ¡u«e­±ªºªF¦è, ¥i¥H­«½Æ¥X²{ 1 ¦¸, 2 ¦¸, 3 ¦¸, ... ¥ô·N¦¸¡v¡C ¦]¬° . ¦b regexp ·í¤¤¦³¯S®íªº·N¸q: ¡u¥ô¦ó¤@­Ó¦r¤¸¡v; ¦ý¦b³o¸Ì§Ú­Ì´N¬O­n§ä "." ©ó¬O¦b«e­±¥[¤W \ ¥H¨ú®ø¥¦ªº¯S®í·N¸q¡C

6.  
¥i¥H§â¤@­Ó¤å¦rÀɸ̭±ªº©Ò¦³ªÅ¥Õ¦C³£§R±¼¶Ü? ³o­Ó regexp ¥i¥H§ì¥X©Ò¦³ªÅ¥Õ¦C: ^\s*$¡C ¦b regexp ³Ì«e­±©ñ¤@­Ó ^ ªí¥Ü±z¥u¹ï ¡u¥X²{¦b¤@¦C¤§­º¡v ªº¼Ëª©¦³¿³½ì; ¦b regexp ªº³Ì«á­±©ñ¤@­Ó $ ªí¥Ü±z¥u¹ï ¡u¥X²{¦b¤@¦C¤§§À¡v ªº¼Ëª©¦³¿³½ì¡C \s ¬O [ \t\n] ªºÂ²¼g, ·N«ä¬O ¡u¥ô¦ó¤@­ÓªÅ¥Õ¦r¤¸¡v (¥]§tªÅ®æ, tab, µ¥µ¥)¡C * ªí¥Ü ¡u«e­±ªºªF¦è, ¥i¥H­«½Æ¥X²{ 0 ¦¸, 1 ¦¸, 2 ¦¸, ... ¥ô·N¦¸¡v¡C ³o­Ó¼Ëª©Â½Ä¶¦¨¤¤¤å, ´N¬O ¡u±qÀY¨ì§À³£¬O¤@¤ùªÅ¥Õªº¨ººØ¦C¡v¡C

³oùؤj¬ù¨Ï¥Î¤F¤Q­Ó regexp ¯S®í²Å¸¹¡C Regexp Á`¦@¤j¬ù¦³¤T¥|¤Q­Ó²Å¸¹; ¤£¹L¨ä¤¤¤j¬ù¦³¤@¥b¸û¤Ö¥Î; ¥u­n¼ô¥Î¨â¥´, ´N¤w¸g¥i¥HÅܫܦhÅ]³N¤F¡C Regexp ¬O¤@ºØ§C¦¨¥», °ª³ø¹Sªº¾Ç²ß§ë¸ê¡C ­@¤ß§â³o¥÷Á¿¸q¬Ý¤@¥b, µ´¹ï¤ñªá®É¶¡¾Çªá«Nªº¹Ï§Î¤¶­±³nÅé§ó­È¦^²¼»ù¡C
ss

TOP

        ÀR«ä¦Û¦b : ¡i¦æµ½­n¤Î®É¡j¦æµ½­n¤Î®É¡A¥\¼w­n«ùÄò¡C¦p¿N¶}¤ô¤@¯ë¡A¥¼¿N¶}¤§«e¤d¸U¤£­n°±º¶¤õ­Ô¡A§_«h­«¨Ó´N¤Ó¶O¨Æ¤F¡C
ªð¦^¦Cªí ¤W¤@¥DÃD