Pythonã¯ããã¾ãã¾ãªæ´»ç¨ãã§ããããããã¼ã¿æ´çãªã©ã§æ´»ç¨ããããã¨èããæ¹ãå¤ãã®ã§ã¯ãªãã§ããããããããããããªæ¹ã®ä¸ã«ã¯
ã» Pythonã§ã®ãã¼ã¿æ´çã®æ¹æ³ãããããããªã
ã» ãæ£è¦è¡¨ç¾ãã¨ãããã®ãã©ã®ãããªãã®ãããããªã
ã¨æ©ã¾ãã¦ããæ¹ãå¤ãã§ãããããã®ããããã®è¨äºã§ã¯
ã» Pythonã«ãããæ£è¦è¡¨ç¾ã®ä½¿ãæ¹
ã» æ£è¦è¡¨ç¾ã®è¡¨ç¾æ¹æ³ã®åºç¤
ãªã©ã«ã¤ãã¦åããããã解説ãã¾ãã
ãã®è¨äºãè¦ãã°ãPythonã®åå¿è ã®æ¹ãæ£è¦è¡¨ç¾ãããããªãæ¹ããåºæ¬çãªç¥èãç¥ããã¨ãã§ãã¾ããããã«ãUdemyã®è¬åº§ãä½µç¨ããã°ãããæ·±ãç¥èã¨æè¡ã身ã«ã¤ãããã¨ãå¯è½ã§ãã
å ¬éæ¥ï¼2024å¹´2æ21æ¥
ï¼¼æåããåç»ã§å¦ã³ããããªãã¸ï¼
Udemyã§è¬åº§ãæ¢ã ï¼INDEX
Pythonã®æ£è¦è¡¨ç¾ã¨ã¯ï¼æååã®æ½åºãç½®æãè¡ãææ³
ãæ£è¦è¡¨ç¾ãã¨ã¯ãæååã®æ½åºãæä½ãããããã®è¡¨ç¾ã»è¨è¿°æ¹æ³ã§ãã
æ½åºãç½®æãªã©ãè¡ãããã®æ¤ç´¢ã®ãã¿ã¼ã³ãäºãæå®ãããã¿ã¼ã³ã«ä¸è´ããæåãæä½ãããã¨ãã§ãã¾ããæ£è¦è¡¨ç¾ã¯ãPythonç¬èªã®æ©è½ã§ã¯ãªãããã¾ãã¾ãªããã°ã©ãã³ã°è¨èªãªã©ã§å©ç¨å¯è½ã§ããPythonã§ã¯æ£è¦è¡¨ç¾ã®ããã®ã¢ã¸ã¥ã¼ã«ãç¨æããã¦ãããããç°¡åã«æ£è¦è¡¨ç¾ãç¨ãã¦ãã¼ã¿ã®æ´çãªã©ãè¡ãªãã¾ãã
Pythonã®æ£è¦è¡¨ç¾ã使ç¨ãããå ´é¢
Pythonã§æ£è¦è¡¨ç¾ãæ´»ç¨ã§ããããã«ãªãã°ã次ã®ãããªå ´é¢ã§å½¹ç«ã¦ããã¨ãå¯è½ã§ãã
- æç« ã®ä¸ããé»è©±çªå·ãE-mailã¢ãã¬ã¹ãæ½åºãã
- ããã¹ããã¼ã¿ã®ä¸ããç¹å®ã®æååã®ã¿ãç½®æãã
- 大éã®ãã¼ã¿ãã妥彿§ãæ¤è¨¼ããï¼ããªãã¼ã·ã§ã³ï¼
Pythonã®æ£è¦è¡¨ç¾ãæ´»ç¨ãããã¨ã§ã大éãã¼ã¿ã®æ´çã管çãä¿®æ£ãçæéã§è¡ãªãã¾ããä¾ãã°ã大éã®HTMLã¿ã°ãè¨è¿°ãããããã¹ããã¼ã¿ã§ãç¹å®ã®HTMLã¿ã°ã®ã¿ãä¿®æ£ãããã¨ãããã¨ãçæéã§ç°¡åã«å®è¡ãããã¨ãå¯è½ã§ãã
ï¼¼æåããåç»ã§å¦ã³ããããªãã¸ï¼
Udemyã§è¬åº§ãæ¢ã ï¼Pythonã®æ£è¦è¡¨ç¾ã®ä½¿ãæ¹
ããããã¯ãPythonã®æ£è¦è¡¨ç¾ã®ä½¿ãæ¹ãå ·ä½çã«è§£èª¬ãã¾ããã¾ãã¯ãåºæ¬çãªæµãããåããããã解説ãããããä¸ã¤ãã¤è¦ã¦ããã¾ãããã

reã¢ã¸ã¥ã¼ã«ãã¤ã³ãã¼ã
Pythonã§æ£è¦è¡¨ç¾ï¼regexï¼ã使ãããã«ã¯ãreã¢ã¸ã¥ã¼ã«ããã¤ã³ãã¼ãããå¿ è¦ãããã¾ããreã¢ã¸ã¥ã¼ã«ã¯æ¨æºã©ã¤ãã©ãªã§ãããããå¥é追å ã§ç¨æããå¿ è¦ã¯ããã¾ãããPythonã§æ£è¦è¡¨ç¾ãå©ç¨ããéã«ã¯ã次ã®ããã«ã¯ããã«ã¤ã³ãã¼ããã¦ããã¾ãããã
|
1 |
import re |
対象ã¨ãªãæååã®å°å ¥
次ã«ãæ¤ç´¢ã»æ½åºã»ç½®æãè¡ãæååãç¨æãã¾ããããã§ã¯ãä¾ã¨ãã¦æ¬¡ã®æååãç¨æãã¾ããã
|
1 |
text_data = "This is an example with phone numbers: 123-456-7890 and 987-654-3210." |
æ£è¦è¡¨ç¾ã®é¢æ°ãç¨ãã¦æä½
reã¢ã¸ã¥ã¼ã«ã®é¢æ°ãç¨ãã¦ãå ç¨ã®æååãæä½ãã¾ããããã§ã¯ãfindall颿°ããä¾ã¨ãã¦å©ç¨ãã¾ããæ¬¡ã®ã³ã¼ãã§ç¤ºããã颿°ãã¡ã¿æåãªã©ã«ã¤ãã¦ã¯ãå¾ã»ã©è©³ãã解説ãã¾ãã
|
1 |
phone_number = re.findall(r'\d{3}-\d{3}-\d{4}', text_data) |
ããã§ã夿°ãphone_numberãã«æ¤ç´¢çµæã®æååãæ ¼ç´ããããããprintæã使ã£ã¦åºåãã¾ããããã¾ã§ã®å 容ããã¹ã¦å«ãã ã³ã¼ãã¯æ¬¡ã®ã¨ããã§ãã
|
1 2 3 4 5 6 7 8 9 |
ã import re text_data = "This is an example with phone numbers: 123-456-7890 and 987-654-3210." phone_number = re.findall(r'\d{3}-\d{3}-\d{4}', text_data) for pnum in phone_number: print("Phone numbers found:", pnum) |
åºåçµæï¼
|
1 2 |
Phone numbers found: 123-456-7890 Phone numbers found: 987-654-3210 |
ãã®ããã«ãæ£è¦è¡¨ç¾ãç¨ãããã¨ã§ããã¹ããã¼ã¿ã®ä¸ããç°¡åã«æ±ãããã¼ã¿ãæ½åºããããããã¨ãå¯è½ã§ãã
æ£è¦è¡¨ç¾ã®é¢æ°ã®ç¨®é¡
reã¢ã¸ã¥ã¼ã«ãã¤ã³ãã¼ããããã¨ã§ã次ã«ç´¹ä»ãã颿°ã使ããããã«ãªãã¾ããæ£è¦è¡¨ç¾ã®ãã¿ã¼ã³ã«ãããããæååãã©ã®ããã«å¦çãããã«ãã£ã¦ãé©åãªé¢æ°ã鏿ããã¨ããã§ãããã
ããã§ã¯ãå©ç¨é »åº¦ãé«ã以ä¸ã®é¢æ°ã«ã¤ãã¦ãããããæãåºç¤çãªä½¿ãæ¹ãç°¡åã«è§£èª¬ãã¾ãã
| match颿° | å é ã§ä¸è´ãããã®ãæ¤ç´¢ |
| search颿° | å ¨ä½ã®ä¸ããä¸è´ããæåã®ãã®ãæ½åº |
| findall颿° | å ¨ä½ããä¸è´ãããã®ããã¹ã¦æ½åº |
| finditer颿° | å ¨ä½ã®ä¸ããä¸è´ãããã®ããã¹ã¦æ½åº |
| fullmatch颿° | å®å ¨ã«ä¸è´ãããã®ãæ½åº |
| sub颿° | ä¸è´ããæååãç½®æ |
ãã詳ããå©ç¨æ¹æ³ã«ã¤ãã¦ç¥ãããæ¹ã¯ãå ¬å¼ããã¥ã¡ã³ããã確èªãã ããã
match颿°ï¼å é ã§ä¸è´ãããã®ãæ¤ç´¢
match颿°ã¯ãæååã®å é ãæ£è¦è¡¨ç¾ã®ãã¿ã¼ã³ã«ä¸è´ãããã©ããã調ã¹ã颿°ã§ãããã¿ã¼ã³ã«ä¸è´ããªãå ´åã«ã¯ãNoneããè¿ããã¾ãã
| æ§æ | æ»ãå¤ ï¼ãããããå ´åï¼ |
æ»ãå¤ ï¼ãããããªãå ´åï¼ |
| re.match(pattern, string) | ãªãã¸ã§ã¯ã | None |
ä¸è´ãããã®ãåå¨ããå ´å
phone_numberã«ã¯ãé»è©±çªå·ãæ ¼ç´ããã¦ãã¾ããæ£è¦è¡¨ç¾ã§ã¯080ã¾ãã¯090ããã¯ãã¾ãã-ï¼ãã¤ãã³ï¼ãæãã§æ°åã4æ¡ï¼4æ¡ã®ãã®ãããããããã©ããã調ã¹ã¾ãã
|
1 2 3 4 5 6 7 8 9 10 11 |
ã import re phone_number = "080-1112-2223, 090-4445-6667, 0120-111-111" result = re.match(r'0[8|9]0-[0-9]{4}-[0-9]{4}', phone_number) if result : print(result.group()) else: print(result) |
åºåçµæï¼
|
1 |
080-1112-2223 |
ä»åã¯phone_numberã®å é ã«ãããããæååãåå¨ãã¦ããããããããããæååãåºåã§ãã¾ããã
ä¸è´ãããã®ãåå¨ããªãå ´å
phone_number2ã¯ãæååã®å é ã080ã090ã§ã¯ããã¾ãããmatch颿°ã§ã¯å é ãä¸è´ãããã©ãããå¤å¥ãããããä¸è´ãããã®ãåå¨ããªãã¨ãã¦åºåããã¾ãã
|
1 2 3 4 5 6 7 8 9 10 11 |
ã import re phone_number2 = "0120-111-111, 080-1112-2223, 090-4445-6667" result = re.match(r'0[8|9]0-[0-9]{4}-[0-9]{4}', phone_number2) if result : print(result.group()) else: print(result) |
åºåçµæï¼
|
1 |
None |
search颿°ï¼å ¨ä½ã®ä¸ããä¸è´ããæåã®ãã®ãæ½åº
search颿°ã¯ãå ¨ä½ã®ä¸ããä¸è´ããæåã®ãã®ãæ½åºãã¾ããmatch颿°ã¨ã¯ç°ãªããæååã®å é ãä¸è´ãã¦ããªãã¨ãæ½åºãããã¨ãå¯è½ã§ããä¸è´ããæååãåå¨ããªãå ´åã¯ãmatch颿°ã¨åæ§ã«ãNoneããè¿ããã¾ãã
| æ§æ | æ»ãå¤ ï¼ãããããå ´åï¼ |
æ»ãå¤ ï¼ãããããªãå ´åï¼ |
| re.search(pattern, string) | ãªãã¸ã§ã¯ã | None |
ä¸è´ãããã®ãåå¨ããå ´å
å ç¨ã®ã³ã¼ãã¨ä¼¼ã¦ãã¾ãããä»åã¯0120ããå§ã¾ãæååããã¿ã¼ã³ã¨ãã¦ãã¾ããphone_numberã«ã¯0120ããå§ã¾ãæååã2ã¤å«ã¾ãã¦ãã¾ãããæåã«ãããããã0120-111-111ãã®ã¿ãæ½åºããã¾ãããã®ã¨ããmatch颿°ã¨ã¯ç°ãªããæååã®å é ãããããã¦ããªãã¨ãåºåã§ãã¦ãããã¨ã«æ³¨ç®ã§ãã
|
1 2 3 4 5 6 7 8 9 10 11 |
ã import re phone_number = "080-1112-2223, 0120-111-111, 090-4445-6667, 0120-222-222" result = re.search(r'0120-[0-9]{3}-[0-9]{3}', phone_number) if result : print(result.group()) else: print(result) |
åºåçµæï¼
|
1 |
0120-111-111 |
ä¸è´ãããã®ãåå¨ããªãå ´å
search颿°ã®å ´åã¯ãåç´ã«æååã®ä¸ã«ãã¿ã¼ã³ã¨ä¸è´ãããã®ãåå¨ããªããã°Noneãè¿ããã¾ãã
|
1 2 3 4 5 6 7 8 9 10 11 |
ã import re phone_number2 = "080-1112-2223, 090-4445-6667" result = re.search(r'0120-[0-9]{3}-[0-9]{3}', phone_number2) if result : print(result.group()) else: print(result) |
åºåçµæï¼
|
1 |
None |
findall颿°ï¼å ¨ä½ããä¸è´ãããã®ããã¹ã¦æ½åº
findall颿°ã¯ãæå®ããæ£è¦è¡¨ç¾ã®ãã¿ã¼ã³ã«ãããããæååããã¹ã¦æ½åºãã¾ããä»ã®é¢æ°ã¨éãããªã¹ãã«æ ¼ç´ããç¹ã«æ³¨æãã¦ãã ãããåç´ã«ãããããæååããã¹ã¦æ½åºãããå ´åã«ã¯ãã¨ã¦ã使ãåæã®è¯ã颿°ã§ãããã¿ã¼ã³ã«ãããããæååãåå¨ããªãå ´åã¯ç©ºã®ãªã¹ããè¿ããã¾ãã
| æ§æ | æ»ãå¤ ï¼ãããããå ´åï¼ |
æ»ãå¤ ï¼ãããããªãå ´åï¼ |
| re.findall(pattern, string) | ãªã¹ã | 空ã®ãªã¹ã |
ä¸è´ãããã®ãåå¨ããå ´å
以ä¸ã®ãµã³ãã«ã³ã¼ãã¯åè¿°ã®ã³ã¼ãã¨åãã§ããè±æ°åãæ··ãã£ãtext_dataããã3æ¡-3æ¡-4æ¡ãã®æ°åããã¿ã¼ã³ã¨ãã¦æ½åºãã¦ãã¾ãããã®ã¨ããphone_numberã¯ãªã¹ãã¨ãªããforæã使ã£ã¦ãªã¹ãã®ä¸èº«ããã¹ã¦åºåãã¦ãã¾ãã
|
1 2 3 4 5 6 7 8 9 |
ã import re text_data = "This is an example with phone numbers: 123-456-7890 and 987-654-3210." phone_number = re.findall(r'\d{3}-\d{3}-\d{4}', text_data) for pnum in phone_number: print("Phone numbers found:", pnum) |
åºåçµæï¼
|
1 2 |
Phone numbers found: 123-456-7890 Phone numbers found: 987-654-3210 |
ä»åã¯phone_numberã®å é ã«ãããããæååãåå¨ãã¦ããããããããããæååãåºåã§ãã¾ããã
ä¸è´ãããã®ãåå¨ããªãå ´å
å ç¨ã®text_dataã®ä¸èº«ãå°ã夿´ããã4æ¡-3æ¡-3æ¡ãã®æ°åã«ããã¨ãããããªããªãã¾ããifæã使ã£ã¦phone_numberã空ãã©ããããã§ãã¯ãã空ã®å ´åã¯not foundã¨åºåããããã«ãã¾ããããã®çµæãæ³å®éãnot foundãåºåããã¦ãã¾ãã
|
1 2 3 4 5 6 7 8 9 |
ã import re text_data2 = "This is an example with phone numbers: 0120-999-999 and 0120-888-888." phone_number = re.findall(r'\d{3}-\d{3}-\d{4}', text_data2) if phone_number == [] : print("not found") |
åºåçµæï¼
|
1 |
not found |
finditer颿°ï¼å ¨ä½ã®ä¸ããä¸è´ãããã®ããã¹ã¦æ½åº
finditer颿°ããfindall颿°ã¨åæ§ã«ãã¿ã¼ã³ã«ä¸è´ãããã®ããã¹ã¦æ½åºã§ãã¾ãããã ããfindall颿°ã¨ã¯ç°ãªããæ»ãå¤ã¯ãªã¹ãã§ã¯ãªããªãã¸ã§ã¯ãï¼ã¤ãã¬ã¼ã¿ï¼ã§ããfinditer颿°ã§ã¯ãåä¸è´ã«å¯¾ãã¦matchãªãã¸ã§ã¯ããæä¾ãããä¸è´ããããã¹ãã®ä½ç½®æ å ±ãªã©ãå«ã¾ãã¾ãããã®ãããfindall颿°ã¨ç°ãªãããã¿ã¼ã³ã«ä¸è´ããæååã®éå§ä½ç½®ãçµäºä½ç½®ãåå¾ãããã¨ãå¯è½ã§ãã
| æ§æ | æ»ãå¤ ï¼ãããããå ´åï¼ |
æ»ãå¤ ï¼ãããããªãå ´åï¼ |
| re.finditer(pattern, string) | ãªãã¸ã§ã¯ã |
ä¸è´ãããã®ãåå¨ããå ´å
æ¯è¼ã®ããã«findall颿°ã¨åããããªãµã³ãã«ã³ã¼ãã§ç¢ºèªãã¦ã¿ã¾ããããåºæ¬çã«ã¯åããããªã³ã¼ãã¨ãªã£ã¦ãã¾ãããåãåºãæ¹ãç°ãªãã¾ããå ãã¦ããã¿ã¼ã³ã®ä¸è´ããæååã®éå§ä½ç½®ã¨çµäºä½ç½®ãä½µãã¦åºåããããã«ãã¾ããã
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
ã import re text_data = "This is an example with phone numbers: 123-456-7890 and 987-654-3210." m = None phone_number = re.finditer(r'\d{3}-\d{3}-\d{4}', text_data) for m in phone_number: print("Phone numbers found:", m.group(), ", found_position:", m.span()) if m is None: print("not found") |
åºåçµæï¼
|
1 2 |
Phone numbers found: 123-456-7890 , found_position: (39, 51) Phone numbers found: 987-654-3210 , found_position: (56, 68) |
ä¸è´ãããã®ãåå¨ããªãå ´å
ãã¿ã¼ã³ã«ä¸è´ãããã®ãåå¨ããªãå ´åã®å¤å®ããããå ´åã¯ãã¤ãã¬ã¼ã¿ã使ã£ã¦åãåºããããããªãã¸ã§ã¯ããæ ¼ç´ãã夿°ï¼ãã®ä¾ã§ã¯mï¼ã«Noneãæ ¼ç´ãã¦ããã¾ããforæã使ã£ã¦ããããªãã¸ã§ã¯ããåãåºããªãã£ãå ´åã¯Noneã®ã¾ã¾ã«ãªãããã以ä¸ã®ãµã³ãã«ã³ã¼ãã§ã¯ãnot foundããåºåããã¾ãã
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
ã import re text_data2 = "This is an example with phone numbers: 0120-999-999 and 0120-888-888." m = None phone_number = re.finditer(r'\d{3}-\d{3}-\d{4}', text_data2) for m in phone_number: print("Phone numbers found:", m.group(), ", found_position:", m.span()) if m is None: print("not found") |
åºåçµæï¼
|
1 |
not found |
fullmatch颿°ï¼å®å ¨ã«ä¸è´ãããã®ãæ½åº
fullmatch颿°ã¯ãæ£è¦è¡¨ç¾ã®ãã¿ã¼ã³ãæååå ¨ä½ã«å®å ¨ã«ä¸è´ãããæ¤è¨¼ãã¾ããå®å ¨ä¸è´ã®å ´åã®ã¿ãªãã¸ã§ã¯ããè¿ããä¸è´ããªãå ´åã¯Noneãè¿ããã¾ãã
| æ§æ | æ»ãå¤ ï¼ãããããå ´åï¼ |
æ»ãå¤ ï¼ãããããªãå ´åï¼ |
| re.fullmatch(pattern, string) | ãªãã¸ã§ã¯ã | None |
以ä¸ã®ãµã³ãã«ã³ã¼ãã§ã¯ããTã§å§ã¾ãoã§çµããæååããæ¤è¨¼ãã¦ãã¾ãããTokyoãã¨ãTokyo, Kyotoãã¯æååå ¨ä½ãå®å ¨ä¸è´ãããããresultã«ãªãã¸ã§ã¯ããæ ¼ç´ããã¦ä¸èº«ãåãåºãã¦åºåãããã¨ãå¯è½ã§ãã䏿¹ãTokyo, Oosakaãã¯å®å ¨ä¸è´ã¨ã¯ãªããªãããNoneãè¿ããã¾ãã
|
1 2 3 4 5 6 7 8 9 10 11 12 |
ã import re text_list = ["Tokyo", "Tokyo, Kyoto", "Tokyo, Oosaka"] for l in text_list: result = re.fullmatch(r'^T.*o$', l) if result is not None: print("[", result.group(), "] is match") else: print("[", l, "] is not match") |
åºåçµæï¼
|
1 2 3 |
[ Tokyo ] is match [ Tokyo, Kyoto ] is match [ Tokyo, Oosaka ] is not match |
sub颿°ï¼ä¸è´ããæååãç½®æ
sub颿°ã¯ãæ£è¦è¡¨ç¾ã®ãã¿ã¼ã³ã«ä¸è´ããæååãç½®æãã¦è¿ãã¾ãã
| æ§æ | æ»ãå¤ ï¼ãããããå ´åï¼ |
æ»ãå¤ ï¼ãããããªãå ´åï¼ |
| re.sub(pattern, repl, string, count) | 夿å¾ã®æåå | ãã®ã¾ã¾ã®æåå |
以ä¸ã®ãµã³ãã«ã³ã¼ãã§ã¯ãdogãããcatãã«ç½®æãã¦ãã¾ãããã¡ãããããã¯æ£è¦è¡¨ç¾ã§æå®ãããã¨ãå¯è½ã§ãã1ã¤ç®ã¯åç´ã«ç½®æãããã¨ãã¦ãã¾ãããããã©ã«ãã§ã¯å¤§æåã¨å°æåã¯åºå¥ããããããDogsãã夿ã§ãã¦ãã¾ããã
ããã§ã2ã¤ç®ã§ã¯ãflags=re.IGNORECASEããè¨è¿°ãã大æåã¨å°æåãåºå¥ããªãããã«æå®ãããã¨ã§Dogsãç½®æãããã¨ãã§ãã¦ãã¾ããã¾ãã3ã¤ç®ã§ã¯ç½®æããåæ°ãã1ãã«æå®ãããããåºåçµæã¯1ã¤ç®ã¨åãã«ãªãã¾ããã
æå¾ã®4ã¤ç®ã¯ãrabbitãã¨ããæååãæ¤ç´¢ãã¦ç½®æãããã¨ãã¦ãã¾ãããå ã®æååã«ã¯åå¨ããªããã¿ã¼ã³ã§ãããã®å ´åã¯ãå ã®æååããã®ã¾ã¾åºåããã¦ãããã¨ãåããã¾ãã
|
1 2 3 4 5 6 7 8 9 10 11 12 |
ã import re text_data = "I like dogs. Dogs are so cute." print(re.sub('dog', 'cat', text_data)) #1 print(re.sub('dog', 'cat', text_data, flags=re.IGNORECASE)) #2 print(re.sub('dog', 'cat', text_data, 1, flags=re.IGNORECASE)) #3 print(re.sub('rabbit', 'cat', text_data)) #4 |
åºåçµæï¼
|
1 2 3 4 |
I like cats. Dogs are so cute. I like cats. cats are so cute. I like cats. Dogs are so cute. I like dogs. Dogs are so cute. |
æ£è¦è¡¨ç¾ã®è¡¨ç¾æ¹æ³
æ£è¦è¡¨ç¾ã§ã¯ãæ°åãããè±æ°åãããä»»æã®æåãããæååã®å é ããªã©ã表ãè¡¨ç¾æ¹æ³ãããã¾ããæ£è¦è¡¨ç¾ã使ãããªãä¸ã§æ¬ ãããªããã®ã§ããããããã¯ãã¡ã¿æåãããç¹æ®ã·ã¼ã±ã³ã¹ãã¨å¼ã°ãããã®ã§ããããå©ç¨ãããã®ããããã表ã§ã¾ã¨ãããããä¸ã¤ãã¤è¦ã¦ããã¾ãããã
ã¡ã¿æå
ã¡ã¿æåã¨ã¯ãç¹å®ã®æå³ãæã¤ç¹æ®è¨å·ã§ããåè¿°ã®ãµã³ãã«ã³ã¼ãã®ä¸ã«ãããã¤ãç»å ´ãã¦ãã¾ããã¡ã¿æåãç¨ãããã¨ã§ãè¤éãªãã¿ã¼ã³ã表ç¾ãããã¨ãã§ãã¾ãã
| ã¡ã¿æå | æå³ | è¨è¿°ä¾ | ãããããæåå |
| . | æ¹è¡ä»¥å¤ã®ä»»æã®æå | 1.3 | 123,153,1a3⦠|
| ^ | æååã®å é | ^12 | 123,125,12b⦠|
| $ | æååã®æ«å°¾ | 12$ | 12,912,c12⦠|
| * | ç´åã®ãã¿ã¼ã³ã0å以ä¸ç¹°ãè¿ãããã® | 12* | 1,12,123,1234⦠|
| + | ç´åã®ãã¿ã¼ã³ã1å以ä¸ç¹°ãè¿ãããã® | 12+ | 12,123,1234⦠|
| ? | ç´åã®ãã¿ã¼ã³ã0ã¾ãã¯1åç¹°ãè¿ãããã® | 12? | 1,12 |
| {m} | ç´åã®ãã¿ã¼ã³ãmåç¹°ãè¿ãããã® | x{3} | xxx |
| {m,n} | ç´åã®ãã¿ã¼ã³ãmåããnåç¹°ãè¿ãããã® | x{1,4} | x,xx,xxx,xxxx |
| [] | []å ã®ãããã1æå | [abc] [3-6] | a,b,c 3,4,5,6 |
| A|B | Aã¨Bã®ãããã | x|y | x,y |
| () | ã°ã«ã¼ãå â»ä»ã®ã¡ã¿æåã¨çµã¿åããã |
(abc). (abc)$ | abcd,abc3⦠xyzabc,123abc⦠|
ã¡ã¿æåã®ãªãã§ãã^ãã¨ã[]ãã®çµã¿åããã«ã¯æ³¨æãå¿ è¦ã§ãã[]ã¯æåã®éåãæå³ããã¡ã¿æåã§ããããã®ä¸ã§^ã使ãã¨ãå¦å®ãã®æå³ã«ãªãã¾ãã[]ã®å å¤ã«^ãããå ´åã§ã¯æ¬¡ã®ããã«æå³ãç°ãªãã¾ãã
| æå³ | è¨è¿°ä¾ | ãããããæåå |
| 0-9以å¤ï¼æ°å以å¤ï¼ | [^0-9] | a,b,c⦠|
| 0-9ã§ã¯ãã¾ã | ^[0-9] | 0,1,2,3⦠|
ç¹æ®ã·ã¼ã±ã³ã¹
ã¡ã¿æåã ãã§ãããããã¿ã¼ã³ã表ç¾ã§ãã¾ãããç¹æ®ã·ã¼ã±ã³ã¹ãç¨ããã°ããç°¡åã«è¡¨ç¾ã§ããå ´åãããã¾ããç¹æ®ã·ã¼ã±ã³ã¹ã¯ç¹ã«å©ç¨é »åº¦ã®é«ããã¿ã¼ã³ãç°¡æ½ã«å¼ã³åºããããã«ãããã®ã§ãããã\ï¼ããã¯ã¹ã©ãã·ã¥ï¼ãã¨ã¢ã«ãã¡ããã䏿åãçµã¿åããã¦è¡¨ç¾ãã¾ãã
| ç¹æ®ã·ã¼ã±ã³ã¹ | æå³ |
| \d | ä»»æã®æ°å |
| \D | ä»»æã®æ°åä»¥å¤ |
| \s | ä»»æã®ç©ºç½æå |
| \S | ä»»æã®ç©ºç½æåä»¥å¤ |
| \w | ä»»æã®è±æ°å |
| \W | ä»»æã®è±æ°åä»¥å¤ |
ã¡ã¿æåã ãã§ãªãç¹æ®ã·ã¼ã±ã³ã¹ãè¦ãã¦ããã°ãããç°¡æ½ã«æ£è¦è¡¨ç¾ã使ããã¨ãå¯è½ã§ããã¾ããã\ï¼ããã¯ã¹ã©ãã·ã¥ï¼ãã¯ãã¡ã¿æåã¨çµã¿åãããã¨ã¡ã¿æåãã®ãã®ã表ãã¾ããä¾ãã°ããã¿ã¼ã³ã¨ãã¦ã*ãããããããããå ´åã«ã¯ã\*ãã¨ãããã¨ã§ã*ããã¡ã¿æåã§ã¯ãªãåãªãæåã¨ãã¦å¦çããã¾ããããã¯ãã¨ã¹ã±ã¼ãå¦çãã¨å¼ã°ãããã®ã§ãã
Pythonã®æ£è¦è¡¨ç¾ã使ãããªããï¼
Pythonã§ãã¼ã¿æ´çãããªãã¼ã·ã§ã³ã宿½ããéã«ã¯ãæ£è¦è¡¨ç¾ã¯æ¬ ããã¾ããããã®è¨äºã§ã¯ãPythonã§æ£è¦è¡¨ç¾ãå©ç¨ããããã®åºç¤ãç´¹ä»ããããããã®è¨äºãåèã«æ£è¦è¡¨ç¾ã«ã¤ãã¦çè§£ãæ·±ãã¾ãããã
ããã£ã¨Pythonã®åºç¤ããå¦ã³ãããã¨ããæ¹ã«ã¯ã以ä¸ã®è¬åº§ãããããã§ããPythonã®åºæ¬æä½ããåç»ã使ã£ã¦è§£èª¬ãã¦ãããããä½ç³»çã«åºç¤ç¥èã身ã«ã¤ãããã¨ãã§ãã¾ãã
ç¾å½¹ã·ãªã³ã³ãã¬ã¼ã¨ã³ã¸ãã¢ãæããPython 3 å ¥é + å¿ç¨ +ã¢ã¡ãªã«ã®ã·ãªã³ã³ãã¬ã¼æµã³ã¼ãã¹ã¿ã¤ã«

ç¾å½¹ã·ãªã³ã³ãã¬ã¼ã¨ã³ã¸ãã¢ãæããPythonå ¥éï¼å¿ç¨ã§ã¯ããã¼ã¿è§£æããã¼ã¿ã¼ãã¼ã¹ããããã¯ã¼ã¯ãæå·åã並ååããã¹ããã¤ã³ãã©èªååããã¥ã¼ã¤ã³ã°ã·ã¹ãã ãéåæå¦çãªã©çãæ²¢å±±ã®å 容ã§ãï¼
ï¼¼ç¡æã§ãã¬ãã¥ã¼ããã§ãã¯ï¼ï¼
è¬åº§ãè¦ã¦ã¿ãè©ä¾¡ï¼â
â
â
â
â
pythonã®çéã®ã³ã¼ããå¦ã¹ãã ãã§ãªãããã¾ãã¾ãªã©ã¤ãã©ãªã®ä½¿ãæ¹ãç¥ããã¨ãã§ãã¾ããã
è©ä¾¡ï¼â
â
â
â
â
ä¸ã¤ä¸ã¤ã®é
ç®ãå¿
è¦ååãªåä½ã§ã¾ã¨ãããã¦ãããããå¾ã»ã©å度å¦ç¿ãããå ´åã«ä¾¿å©ã§ãã
æ£è¦è¡¨ç¾ã¨ä½µãã¦ãPythonã使ãããªãããã«åºç¤ããå¦ãã§ã¿ã¦ã¯ãããã§ããããã










ææ°æ å ±ã»ãã£ã³ãã¼ã³æ å ±çºä¿¡ä¸