Pythonã®splitã§æååãåå²ããæ¹æ³
Pythonã®splitã䜿ã£ãæååã®åå²ã»æœåºã»åãåºãã«ã€ããŠãåŠã¹ãèšäºã§ããsplitã䜿ã£ãŠã©ã®ãããªããšãã§ãããã解説ããŸãããŸãå ·äœçãªsplitã®ãµã³ãã«ã³ãŒããšå®è¡çµæã亀ããªãã解説ããŸããããã°ã©ãã³ã°ãè¡ã£ãŠãããšãããŒã¿ã«å«ãŸããæååãå å·¥ããå¿ èŠã«é§ãããããšãå€ã ãããŸãããšãã«æååãåå²ã»çµåã»æ¯èŒããããšã¯ãæ¬åœã«å€ãã§ãã
ããã§ä»åã¯ãPythonã䜿ã£ãŠæååããåå²ããã»æœåºããã»åãåºããããšã«ãã©ãŒã«ã¹ãåœãŠã解説ãè¡ããŸãã
Pythonã¯æ¯èŒççãèšè¿°éã§ããããããšãå®çŸã§ããã®ã§ããµã¯ããšã¹ã¯ãªãããäœæããã®ã«ãã£ãŠã€ãã®èšèªã§ããããã«ãããäžã«ãªãã¡ã¬ã³ã¹ãè±å¯ã«ããã®ã§ãåå¿è ã§ãããŸãæéããããã«èª¿ã¹ãããšãã§ããã®ã匷ã¿ã§ãã
ããã§ã¯æ©éèŠãŠãããŸãããã
splitã®æå³ãšã¯
Pythonã®splitã䜿ãæå³ã§ãããããããã«æååãåå²ããããã§ãã
å€ãã®ã·ã¹ãã ã§æ±ãããŒã¿åœ¢åŒã¯ã¹ããŒã¹ãã¿ããã«ã³ããªã©ã§åºåãããŠããŸãããšã¯ããã¹ããŒã¹ãªã©ã§åºåãããããŒã¿ãããã°ã©ã å ã§åŠçããããšããå€ãã®å Žåã¯ãã®ãŸãŸã§ã¯äœ¿ãã«ããã§ãã
ãã®ãããªã¹ãåããããæ¬²ããæååã®äžéšã ããåãåºãããããŸãããã®ããã«æååããªã¹ãåããããåãåºãããããäœæ¥ã«splitã¯å€§ãã«åœ¹ç«ã¡ãŸãã
次ã¯ãµã³ãã«ã³ãŒãã䜿ã£ãŠsplitã®å ·äœçãªäœ¿ãæ¹ã解説ããŸãã
æååãåå²ãã4ã€ã®ããæ¹
ããã§ã¯splitã䜿ã£ãŠæååãåå²ããæ¹æ³ãããµã³ãã«ã³ãŒãã亀ããŠèª¬æããŸãã
splitã䜿ã£ãæžãæ¹ã¯ã·ã³ãã«ã§ããããããã®ã§ãã¯ãããŠpythonãè§Šã人ã§ãããã«æ £ããã§ãããã
ãŸããPythonã«ã¯splitã ãã§ã¯ãªãrsplitãsplitlinesãšãã£ããsplitããæŽŸçããæ©èœãããã®ã§ããããã«ã€ããŠãè§ŠããŠãããŸãã
splitã䜿ã£ãŠæååãåå²ãã
ãŸãã¯äžçªãªãŒãœããã¯ã¹ãªæ¹æ³ã§ããsplitã䜿ã£ãããæ¹ã説æããŸãã
splitã䜿ãã«ã¯ä»¥äžã®ããã«æžããŸãã
æåå.split(åºåãæåãåå²ãããäœçœ®)
splitã¯ãåºåãæåãã²ãšã€ã ãæå®ã§ããŸãã
äŸãã°ãã«ã³ãã§åºåãããããã¹ããåå²ãããã®ã§ããã°ã«ã³ãããã«ã³ã以å€ã§ããã°ãããããã¹ããŒã¹ãã¿ããªã©ãæå®ã§ããŸãã
ãŸããåå²ããæååã¯èªåçã«ãªã¹ã圢åŒã«å€æãããã®ã§ãåºåãããããŒã¿åå£«ãæ¯èŒãããšãã¯éåžžã«äŸ¿å©ã§ãã
ãµã³ãã«ã³ãŒãã¯ä»¥äžã®éãã§ãã
## ã¹ããŒã¹ã§åå²
sample = "a b c d e f"
print(sample.split())
## å·Šãã1èŠçŽ (a)ã ãåå²
sample = "a b c d e f"
print(sample.split(' ', 1))
print(sample.split(' ', 1)[0])
print(sample.split(' ', 1)[1])
## ã«ã³ãã§åå²
sample_comma = "a,b,c,d,e,f"
print(sample_comma.split(','))
è€æ°ã®åºåãæåãæå®ããŠæååãåå²ãã
å ã»ã©ã®äŸã§ã¯ãsplitã«ã¯ã²ãšã€ã®åºåãæåããæå®ã§ããŸããã§ããããããå®éã®äœæ¥ãè¡ãã«ããã£ãŠã¯ãè€æ°ã®åºåãæåãæå®ãããããšã®æ¹ãå€ãã§ãããã
ãã€ã¯Pythonã®splitã«ã¯è€æ°ã®åºåãæåãæå®ããŠãæååãåå²ããæ¹æ³ãæºåãããŠããŸããè€æ°ã®åºåãæåã䜿ã£ãŠsplitãè¡ãã«ã¯ãreãšããPythonã®ã¢ãžã¥ãŒã«ãimportããå¿ èŠããããŸãã
re.splitã¯ä»¥äžã®ããã«äœ¿ããŸãã
re.split(æ£èŠè¡šçŸ, æåå)
ãªããreã¢ãžã¥ãŒã«ã«ã€ããŠã¯åŸã»ã©è©³ãã説æããŸãã
## æ£èŠè¡šçŸã䜿ããã
import re
## è€æ°ã®åºåãæåã§åå²
sample_patterns = "a,b_c,d;e,f"
print(re.split('[,_;]', sample_patterns))
rsplitã§æååãå³ããåå²ãã
rsplitã¯ãå³ããå·Šã«åãã£ãŠæååãåå²ããŸãã
splitã¯å·Šããå³ãžåãã£ãŠæååãåå²ãããããrsplitã®"r"ã¯ãå³ããå察ã®ããšãã£ãæå³ã瀺ããŠãããšæãããŸãã
äœ¿ãæ¹ã¯splitãšåãã§ãã
## å³ãã1èŠçŽ (f)ã ãåå²
sample = "a b c d e f"
print(sample.rsplit(' ', 1))
splitlinesãå©çšããŠæ¹è¡ã§åå²ãã
splitlinesã¯ãæ¹è¡ããéšåã§æååãåå²ããŸãã
æ¹è¡ããŠããªãããã¹ãããã®ãŸãŸèªã¿èŸŒã¿ãæ¹è¡ããšã®ããã¹ãããªã¹ãåãããæãªã©ã¯éå®ãã颿°ã§ãã
äœ¿ãæ¹ã¯splitãšåãã§ãã
## æ¹è¡ã§åå²
sample_lines = "a A 1\nb B 2\nc C 3\n"
print(sample_lines.splitlines())
æååãæœåºããããæ¹
ãsplitã§è€æ°ã®åºåãæåãæå®ããæ¹æ³ãã§åºãŠããreã¢ãžã¥ãŒã«ã§ãããããã¯Pythonã§ãæ£èŠè¡šçŸã䜿ããããšã宣èšããŠããŸãã
æ£èŠè¡šçŸãšã¯ããæååã®ãã¿ãŒã³ããæœè±¡çã«è¡šçŸããããã®èšè¿°æ¹æ³ã§ããäŸãã°ã*ã¯ãæåã»æ°åã»èšå·ã®ã©ãããã[123]ã¯ã1ã2ã3ãããšãã£ãè¡šçŸæ¹æ³ã§ãã
æ£èŠè¡šçŸã¯ããã ãã§æ¬1ååã«ãªãããããèšå€§ãªéã®æ å ±ããããŸãããšã¯ãããåºæ¬çãªãšããã¯Pythonã®å ¬åŒãµã€ããQiitaãStackoverflowãªã©ã«ããæ å ±ãèŠãã ãã§ååãªç¥èãåŸãããšãå¯èœã§ãã
ããã°ã©ãã³ã°ãã¯ãããŠéããªãé ã§ããã°æ£èŠè¡šçŸã«è§Šããå¿ èŠã¯èãã§ããã䜿ãããªããã°ãšãŠã䟿å©ãªãã®ã«ãªãã®ã§ãããæ°ãåããããã£ã¬ã³ãžããŠã¿ãŠãã ããã
###re.splitã§æ£èŠè¡šçŸã䜿ããæååãæœåºãã
re.splitã䜿ã£ãŠãç°¡åãªæ£èŠè¡šçŸãå©çšããæååã®æœåºãPythonã®ãµã³ãã«ã³ãŒãã§èª¬æããŸãã
re.split(æ£èŠè¡šçŸ, æåå)
æ£èŠè¡šçŸã«è©²åœããç®æã®[A-Z]ã§ãããããã¯ãA~Zã®ã©ããããæå³ããŠããŸããã€ãŸããã®ã³ãŒãã¯è±å€§æåãåºåãæåãšããŠæ±ããæååãåå²ããããšã«ãªããŸãã
## æ£èŠè¡šçŸã䜿ããã
import re
## 倧æååºåãã§åå²
sample_upper_char = "aAbBcCdDeEf"
print(re.split('[A-Z]', sample_upper_char))
æååãåãåºãããæ¹
Pythonã«ã¯ãã¹ã©ã€ã¹ãšããæ©èœãååšããŸããã¹ã©ã€ã¹ãšã¯æåéããåããšãããšããæå³ã§ãPythonã䜿ã£ãŠæååãåãåºãæ©èœã§ãã
åçŽã«æååãåãåºãã ãã§ã¯ãªããæååãå転ãããããnæåé£ã°ãã§æååãååŸãããå Žåãªã©ã«ãå©çšã§ãããããéåžžã«æ±çšæ§ã®é«ãããŒã«ã§ãã
ã¹ã©ã€ã¹ã䜿ã£ãŠæååãåãåºã
ã¹ã©ã€ã¹ã®äœ¿ãæ¹ã¯ä»¥äžã®éãã§ãã
æåå[éå§äœçœ®ïŒçµäºäœçœ®ïŒå¢åïŒnæåé£ã°ãïŒ]
## ãµã³ãã«ã®æåå
sample = "abcdefgh"
## é ãã3æåå
print(sample[:3])
## é ãã4æåããçµãããŸã§
print(sample[3:])
## é ãã3æåãã5æåç®ãŸã§
print(sample[2:5])
## é ãã3æåé£ã°ã
print(sample[::3])
## å察ã«äžŠã³ããã
print(sample[::-1])
ãŸãšã
ãããé§ãè¶³ã§ããããPythonã䜿ã£ãæååæäœã®åºæ¬ã§ãããæååã®ãåå²ã»æœåºã»åãåºããã説æããŸããããŸãå°ãé«åºŠãªå 容ã§ããããre.splitã«ããæ£èŠè¡šçŸãå©çšããæååæœåºã«ã€ããŠãPythonã®ãµã³ãã«ã³ãŒãã§è§£èª¬ããŸããã
ãã®èšäºã§æããå 容ã䜿ãããªããã°ãæåã®åå²ã»æœåºã»åãåºãã«ã€ããŠå°ãããšã¯ããŸãç¡ãã§ãããããšã¯ããPythonã®æååæäœã¯ããã ãã§ã¯ãããŸãããsplit以å€ã«ããããããããŸããæåãªãã®ã ãšreplace, join, strip, upper, lowerãªã©ããããŸãã
èå³ãããã°ããã²ãã©ã€ããŠã¿ãŠãã ããã













