public final class Pattern extends Object implements Serializable
æ£èŠè¡šçŸã¯ãæååãšããŠæå®ãããã®ã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ã«ã³ã³ãã€ã«ããå¿
èŠããããŸãã çµæã®ãã¿ãŒã³ã䜿çšããŠãä»»æã®æåã·ãŒã±ã³ã¹ãæ£èŠè¡šçŸãšãããã§ããMatcherãªããžã§ã¯ããäœæã§ããŸãã ããããå®è¡ãããšãã®ç¶æ
ã¯ãã¹ãŠãããã£ã«æ ŒçŽãããŸãããã®ãããè€æ°ã®ãããã£ãåããã¿ãŒã³ãå
±æã§ããŸãã
æšæºçãªåŒåºãã·ãŒã±ã³ã¹ã¯ã次ã®ããã«ãªããŸãã
Pattern p = Pattern.compile("a*b"); Matcher m = p.matcher("aaaaab"); boolean b = m.matches();
ãã®ã¯ã©ã¹ã«å®çŸ©ããmatchesã¡ãœããã䜿çšããã°ãæ£èŠè¡šçŸã¯äžåºŠäœ¿çšããã ãã§æžã¿ãŸãã ãã®ã¡ãœããã1ååŒã³åºãã ãã§ã衚çŸãã³ã³ãã€ã«ãããå
¥åã·ãŒã±ã³ã¹ãšã®ããããè¡ãããŸãã æ¬¡ã®æã¯ãåè¿°ã®3ã€ã®æãšç䟡ã§ãã
boolean b = Pattern.matches("a*b", "aaaaab");
ãã ããããããç¹°ãè¿ãå Žåã¯ãã³ã³ãã€ã«æžã¿ã®ãã¿ãŒã³ãåå©çšã§ããªããããå¹çãäœäžããŸãã
ãã®ã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ã¯äžå€ã§ãããããè€æ°ã®ã¹ã¬ããã§äžŠè¡ããŠäœ¿çšã§ããŸãã Matcherã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ã¯ããã®ãããªçšéã«å®å
šã«äœ¿çšã§ããŸããã
| æ§æ | ããã |
|---|---|
| æå | |
| x | æåx |
| \\ | ããã¯ã¹ã©ãã·ã¥æå |
| \0n | 8é²å€0nãæã€æå(0 <= n <= 7) |
| \0nn | 8é²å€0nnãæã€æå(0 <= n <= 7) |
| \0mnn | 8é²å€0mnnãæã€æå(0 <= m <= 3, 0 <= n <= 7) |
| \xhh | 16é²å€ 0xhhãæã€æå |
| \uhhhh | 16é²å€ 0xhhhhãæã€æå |
| \x{h...h} | 16é²å€0xh...hãæã€æå(Character.MIN_CODE_POINT <= 0xh...h <=  Character.MAX_CODE_POINT) |
| \t | ã¿ãæå(ã\u0009ã) |
| \n | æ¹è¡æå(ã\u000Aã) |
| \r | ãã£ãªããžã»ãªã¿ãŒã³æå(ã\u000Dã) |
| \f | çšçŽéãæå(ã\u000Cã) |
| \a | èŠå(ãã«)æå(ã\u0007ã) |
| \e | ãšã¹ã±ãŒãæå(ã\u001Bã) |
| \cx | xã«å¯Ÿå¿ããå¶åŸ¡æå |
| æåã¯ã©ã¹ | |
[abc] |
aãbããŸãã¯c (åçŽã¯ã©ã¹) |
[^abc] |
aãbãc以å€ã®æå(åŠå®) |
[a-zA-Z] |
a - zãŸãã¯A - Z (ç¯å²) |
[a-d[m-p]] |
a - dãŸãã¯m - p: [a-dm-p] (çµå) |
[a-z&&[def]] |
dãeããŸãã¯f (亀差) |
[a-z&&[^bc]] |
a - z (bãšcãé€ã): [ad-z] (æžç®) |
[a-z&&[^m-p]] |
a - z (m - pãé€ã): [a-lq-z] (æžç®) |
| å®çŸ©æžã¿ã®æåã¯ã©ã¹ | |
| . | ä»»æã®æå(è¡æ«èšå·ãšãããããå Žåããã) |
| \d | æ°å: [0-9] |
| \D | æ°å以å€: [^0-9] |
| \h | æ°Žå¹³æ¹åã®ç©ºçœæå: [ \t\xA0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000] |
| \H | æ°Žå¹³æ¹å以å€ã®ç©ºçœæå: [^\h] |
| \s | ç©ºçœæå: [\t\n\x0B\f\r] |
| \S | éç©ºçœæå: [^\s] |
| \v | åçŽæ¹åã®ç©ºçœæå: [\n\x0B\f\r\x85\u2028\u2029] |
| \V | åçŽæ¹å以å€ã®ç©ºçœæå: [^\v] |
| \w | åèªæ§ææå: [a-zA-Z_0-9] |
| \W | éåèªæå: [^\w] |
| POSIXæåã¯ã©ã¹(US-ASCIIã®ã¿) | |
\p{Lower} |
å°æåã®è±å: [a-z] |
\p{Upper} |
倧æåã®è±å: [A-Z] |
\p{ASCII} |
ãã¹ãŠã®ASCIIæå: [\x00-\x7F] |
\p{Alpha} |
è±å: [\p{Lower}\p{Upper}] |
\p{Digit} |
10 鲿°å: [0-9] |
\p{Alnum} |
è±æ°å: [\p{Alpha}\p{Digit}] |
\p{Punct} |
å¥èªæå: !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ã®1〠|
\p{Graph} |
衚瀺ã§ããæå: [\p{Alnum}\p{Punct}] |
\p{Print} |
ããªã³ãå¯èœæå: [\p{Graph}\x20] |
\p{Blank} |
空çœãŸãã¯ã¿ã: [\t] |
\p{Cntrl} |
å¶åŸ¡æå: [\x00-\x1F\x7F] |
\p{XDigit} |
16鲿°å: [0-9a-fA-F] |
\p{Space} |
ç©ºçœæå: [\t\n\x0B\f\r] |
| java.lang.Characterã¯ã©ã¹(åçŽãªjavaæåã¿ã€ã) | |
| \p{javaLowerCase} | java.lang.Character.isLowerCase()ãšç䟡 |
| \p{javaUpperCase} | java.lang.Character.isUpperCase()ãšç䟡 |
| \p{javaWhitespace} | java.lang.Character.isWhitespace()ãšç䟡 |
| \p{javaMirrored} | java.lang.Character.isMirrored()ãšç䟡 |
| Unicodeã¹ã¯ãªããããããã¯ãã«ããŽãªããã€ããªã»ããããã£ã®ã¯ã©ã¹ | |
\p{IsLatin} |
Latin ã¹ã¯ãªããæå(ã¹ã¯ãªãã) |
\p{InGreek} |
Greek ãããã¯ã®æå(ãããã¯) |
\p{Lu} |
倧æå(ã«ããŽãª) |
\p{IsAlphabetic} |
è±å(ãã€ããªã»ããããã£) |
\p{Sc} |
é貚èšå· |
\P{InGreek} |
ã®ãªã·ã£èªãããã¯ä»¥å€ã®æå(åŠå®) |
[\p{L}&&[^\p{Lu}]] |
倧æå以å€ã®æå(æžç®) |
| å¢çããã㣠| |
| ^ | è¡ã®å é |
| $ | è¡ã®æ«å°Ÿ |
| \b | åèªå¢ç |
| \B | éåèªå¢ç |
| \A | å ¥åã®å é |
| \G | ååã®ãããã®æ«å°Ÿ |
| \Z | æåŸã®è¡æ«èšå·ãããå Žåã¯ããããé€ãå ¥åã®æ«å°Ÿ |
| \z | å ¥åã®æ«å°Ÿ |
| æ¹è¡ããã㣠| |
| \R | ãã¹ãŠã®Unicodeæ¹è¡ã·ãŒã±ã³ã¹ã¯ã\u000D\u000A|[\u000A\u000B\u000C\u000D\u0085\u2028\u2029] ã«çãã |
| æé·äžèŽæ°éå | |
| X? | Xã1ãŸãã¯0å |
| X* | Xã0åä»¥äž |
| X+ | Xã1åä»¥äž |
| X{n} | Xãæ£ç¢ºã«nå |
| X{n,} | Xãnåä»¥äž |
| X{n,m} | Xãnå以äžãmåä»¥äž |
| æçäžèŽæ°éå | |
| X?? | Xã1ãŸãã¯0å |
| X*? | Xã0åä»¥äž |
| X+? | Xã1åä»¥äž |
| X{n}? | Xãæ£ç¢ºã«nå |
| X{n,}? | Xãnåä»¥äž |
| X{n,m}? | Xãnå以äžãmåä»¥äž |
| åŒ·æ¬²ãªæ°éå | |
| X?+ | Xã1ãŸãã¯0å |
| X*+ | Xã0åä»¥äž |
| X++ | Xã1åä»¥äž |
| X{n}+ | Xãæ£ç¢ºã«nå |
| X{n,}+ | Xãnåä»¥äž |
| X{n,m}+ | Xãnå以äžãmåä»¥äž |
| è«çæŒç®å | |
| XY | Xã®çŽåŸã«Y |
| X|Y | XãŸãã¯Y |
| (X) | Xããã£ããã£ãªã³ã°ã»ã°ã«ãŒããšã㊠|
| åŸæ¹åç § | |
| \n | ãããããnçªç®ã®ãã£ããã£ãªã³ã°ã»ã°ã«ãŒã |
| \k<name> | ãnameãããããããååä»ããã£ããã£ãªã³ã°ã»ã°ã«ãŒã |
| åŒçš | |
| \ | ãªããã ããæ¬¡ã®æåãåŒçšãã |
| \Q | ãªããã ãã\EãŸã§ã®ãã¹ãŠã®æåããšã¹ã±ãŒããã |
| \E | ãªããã ãã\Qã§éå§ãããåŒçšããšã¹ã±ãŒããã |
| ç¹æ®ãªæ§æ(ååä»ããã£ããã£ãªã³ã°ãéãã£ããã£ãªã³ã°) | |
| (?<name>X) | Xãååä»ããã£ããã£ãªã³ã°ã»ã°ã«ãŒããšã㊠|
| (?:X) | Xãéãã£ããã£ãªã³ã°ã»ã°ã«ãŒããšã㊠|
| (?idmsuxU-idmsuxU) | ãªããã ãããããã»ãã©ã°i d m s u x Uã®ãªã³ - ãªããåãæ¿ãã |
| (?idmsux-idmsux:X) | Xãéãã£ããã£ãªã³ã°ã»ã°ã«ãŒããšããŠãæå®ããããã©ã°i d m s u xã®ãªã³/ãªããåãæ¿ãã |
| (?=X) | Xãå¹ ãŒãã®è¯å®å èªã¿ |
| (?!X) | Xãå¹ ãŒãã®åŠå®å èªã¿ |
| (?<=X) | Xãå¹ ãŒãã®è¯å®åŸèªã¿ |
| (?<!X) | Xãå¹ ãŒãã®åŠå®åŸèªã¿ |
| (?>X) | Xãç¬ç«ãããéãã£ããã£ãªã³ã°ã»ã°ã«ãŒããšã㊠|
ããã¯ã¹ã©ãã·ã¥æå(ã\ã)ã¯ãåè¿°ã®è¡šã«å®çŸ©ãããŠãããšã¹ã±ãŒãæ§æãå°å ¥ãã圹å²ãæãããŸãããŸããæå®ããªãã£ãå Žåã«éãšã¹ã±ãŒãæ§æãšè§£éãããæååããšã¹ã±ãŒãããŸãã ããšãã°ãæ£èŠè¡šçŸ\\ã¯1ã€ã®ããã¯ã¹ã©ãã·ã¥ãšããããã\{ã¯å·Šæ¬åŒ§ãšãããããŸãã
è±åã®åã«ããã¯ã¹ã©ãã·ã¥ã䜿çšãããšãã«ããã®è±åããšã¹ã±ãŒãæ§æã§ãªãå Žåã¯ããšã©ãŒã«ãªããŸãããããã®ãã¿ãŒã³ã¯ãæ£èŠè¡šçŸèšèªã®ä»åŸã®æ¡åŒµã«äºçŽãããŠããŸãã è±å以å€ã®æåã®å Žåã¯ããã®æåãéãšã¹ã±ãŒãæ§æã«å«ãŸãããã©ããã«ããããããããã¯ã¹ã©ãã·ã¥ãæå®ã§ããŸãã
Javaâ¢èšèªä»æ§ã§ã¯ãJavaãœãŒã¹ã»ã³ãŒãã®æååãªãã©ã«ã«å«ãŸããããã¯ã¹ã©ãã·ã¥ã¯ãUnicodeãšã¹ã±ãŒã(ã»ã¯ã·ã§ã³3.3)ããã®ä»ã®æåãšã¹ã±ãŒã(ã»ã¯ã·ã§ã³3.10.6)ãšããŠå¿ é ãšè§£éãããŸãããã®ãããããã¯ã¹ã©ãã·ã¥ãJavaãã€ãã³ãŒãã»ã³ã³ãã€ã©ã«ãã£ãŠè§£éãããªãããã«ããã«ã¯ãæ£èŠè¡šçŸã衚ãæååãªãã©ã«å ã§ããã¯ã¹ã©ãã·ã¥ã2ã€ç¶ããå¿ èŠããããŸãã ããšãã°ãæååãªãã©ã«ã\bãã¯ãæ£èŠè¡šçŸãšè§£éããããšãããã¯ã¹ããŒã¹1æåãšããããããŸããããããã\\bãã¯åèªå¢çãšããããããŸãã ãŸããæååãªãã©ã«ã\(hello\)ãã¯äžåœã«ãªããã³ã³ãã€ã«æãšã©ãŒãçºçããŸããæåå(hello)ãšããããããã«ã¯ãæååãªãã©ã«\\(hello\\)ã䜿çšããå¿ èŠããããŸãã
æåã¯ã©ã¹ã¯ãã»ãã®æåã¯ã©ã¹å ã«æå®ããããçµåæŒç®å(æé»ç)ã亀差æŒç®å(&&)ã䜿çšããŠäœæããããšãã§ããŸãã çµåæŒç®åã¯ã1ã€ä»¥äžã®ãªãã©ã³ãã»ã¯ã©ã¹ã«å«ãŸãããã¹ãŠã®æåãå«ãã¯ã©ã¹ã衚ããŸãã 亀差æŒç®åã¯ã2ã€ã®ãªãã©ã³ãã»ã¯ã©ã¹ã«å«ãŸãããã¹ãŠã®æåãå«ãã¯ã©ã¹ã衚ããŸãã
æåã¯ã©ã¹æŒç®åã¯ã次ã®é ã§åªå é äœãé«ããªããŸãã
1 ãªãã©ã«ã»ãšã¹ã±ãŒã \x 2 ã°ã«ãŒãå [...] 3 ç¯å² a-z 4 è«çå [a-e][i-u] 5 è«çç© [a-z&&[aeiou]]
å®éã«ã¯ãç°ãªãã¡ã¿ãã£ã©ã¯ã¿ã®ã»ããã¯ãæåã¯ã©ã¹ã®å€éšã§ã¯ãªãå éšã«ååšããããšã«çæããŠãã ããã ããšãã°ãæ£èŠè¡šçŸ.ã¯ãæåã¯ã©ã¹å éšã§ã¯ãã®ç¹æ®ãªæå³ã倱ããŸããã衚çŸ-ã¯ç¯å²ã瀺ãã¡ã¿ãã£ã©ã¯ã¿ã«ãªããŸãã
è¡æ«èšå·ãšã¯ãå ¥åæåã·ãŒã±ã³ã¹ã®è¡ã®æ«å°Ÿãæå®ãããšãã«äœ¿çšããã1æåãŸãã¯2æåã®æåã·ãŒã±ã³ã¹ã§ãã æ¬¡ã®æåãè¡æ«èšå·ãšããŠèªèãããŸãã
UNIX_LINESã¢ãŒããæå¹ãªå Žåã¯ãæ¹è¡æåã ããè¡æ«èšå·ãšããŠèªèãããŸãã
æ£èŠè¡šçŸ.ã¯ãDOTALLãã©ã°ãæå®ãããŠããªãå Žåãè¡æ«èšå·ä»¥å€ã®ãã¹ãŠã®æåãšãããããŸãã
ããã©ã«ãã§ã¯ãæ£èŠè¡šçŸ^ããã³$ã¯è¡æ«èšå·ãç¡èŠããå
¥åã·ãŒã±ã³ã¹å
šäœã®ããããå
é ãšæ«å°Ÿã ãã«ãããããŸãã MULTILINEã¢ãŒããã¢ã¯ãã£ãã«ãªããšã^ã¯å
¥åã®å
é ãããã³å
¥åã®æ«å°Ÿãé€ããã¹ãŠã®è¡æ«èšå·ã®åŸã«ãããããŸãã MULTILINEã¢ãŒãã®å Žåã$ã¯è¡æ«èšå·ã®çŽåããŸãã¯å
¥åã·ãŒã±ã³ã¹ã®æ«å°Ÿã«ãããããŸãã
ãã£ããã£ãªã³ã°ã»ã°ã«ãŒãã«ã¯ãå·Šãã峿¹åã«å·Šäžžæ¬åŒ§ãæ°ããããšã«ãã£ãŠãçªå·ãä»ããããŸãã ããšãã°ã衚çŸ((A)(B(C)))ã¯ã次ã®4ã€ã®ã°ã«ãŒãã«åé¡ãããŸãã
1 ((A)(B(C))) 2 (A) 3 (B(C)) 4 (C)
ã°ã«ãŒã0ã¯ãåžžã«è¡šçŸå šäœã衚ããŸãã
ãã£ããã£ãªã³ã°ã»ã°ã«ãŒãããã®ããã«åé¡ãããŠãããå ¥åã·ãŒã±ã³ã¹ã®åéšåã·ãŒã±ã³ã¹ããããã®ã°ã«ãŒããšããããããããããããã³ã«éšåã·ãŒã±ã³ã¹ãä¿åãããŸãã ãã£ããã£ãããéšåã·ãŒã¯ãšã³ã¹ã¯ãåŸæ¹åç §ã§ã衚çŸå ã§ããšã§äœ¿çšã§ããŸãããŸãããããæäœãå®äºãããããããã£ããåãåºãããšãã§ããŸãã
ãŸãããã£ããã£ãªã³ã°ã»ã°ã«ãŒãã«ã¯ãnameã(ååä»ããã£ããã£ãªã³ã°ã»ã°ã«ãŒã)ãå²ãåœãŠãããããšã§ãnameãã«ãã£ãŠåŸæ¹åç §ã§ããŸãã ã°ã«ãŒãåã¯ãæ¬¡ã®æåã§æ§æãããŸãã æåã®æåã¯è±åã§ããå¿ èŠããããŸãã
ååä»ããã£ããã£ãªã³ã°ã»ã°ã«ãŒãããã°ã«ãŒãçªå·ã§èª¬æããããã«çªå·ä»ããããŸãã
ã°ã«ãŒãã«é¢é£ä»ãããããã£ããã£ãããå ¥åã¯åžžã«ãã°ã«ãŒããæåŸã«äžèŽããéšååã§ãã æ°éåã«ããã°ã«ãŒãã2åç®ã«è©äŸ¡ãããå Žåãåã«ãã£ããã£ãããå€ãããå Žåã¯ã2åç®ã®è©äŸ¡ã倱æããå Žåããã®å€ãä¿æãããŸãã ããšãã°ãæååãabaãã衚çŸ(a(b)?)+ãšãããããå Žåã¯ãã°ã«ãŒã2ã«èšå®ããããbããä¿æãããŸãã ãã£ããã£ããããã¹ãŠã®å ¥åã¯ãåãããã®éå§æã«ç Žæ£ãããŸãã
(?ã§å§ãŸãã°ã«ãŒãã¯ãçŽç²ãªéãã£ããã£ãªã³ã°ã»ã°ã«ãŒãã§ãããã¹ãããã£ããã£ãããã°ã«ãŒãå šäœãŸãã¯ååä»ããã£ããã£ãªã³ã°ã»ã°ã«ãŒãã«ã«ãŠã³ããããŸããã
ãã®ã¯ã©ã¹ã¯ããUnicode Technical Standard#18: Unicode Regular Expressionã(ãŠãã³ãŒãã»ãã¯ãã«ã«ã»ã¹ã¿ã³ããŒãNo.18: ãŠãã³ãŒãæ£èŠè¡šçŸã¬ã€ãã©ã€ã³)ã®Level 1ããã³ããªãªãŒã¹2.1ãCanonical Equivalentsã(æ£èŠç䟡)ã«é©åããŠããŸãã
JavaãœãŒã¹ã»ã³ãŒãã§ã¯ã\u2014ãªã©ã®Unicodeãšã¹ã±ãŒãã»ã·ãŒã±ã³ã¹ã¯ããJavaâ¢èšèªä»æ§ãã®ã»ã¯ã·ã§ã³3.3ã«åºã¥ããŠåŠçãããŸãã ãããã®ãšã¹ã±ãŒãã»ã·ãŒã±ã³ã¹ã¯ãæ£èŠè¡šçŸããŒãµãŒã«ãã£ãŠçŽæ¥å®è£ ãããããããã¡ã€ã«ãŸãã¯ããŒããŒãããèªã¿èŸŒãã 衚çŸã®äžã§ãUnicodeãšã¹ã±ãŒãã䜿çšã§ããŸãã ã€ãŸããæååã\u2014ããšã\\u2014ãã¯ç䟡ã§ã¯ãããŸããããåããã¿ãŒã³ã«ã³ã³ãã€ã«ããã16é²å€0x2014ã®æåãšãããããŸãã
Unicodeæåã¯ãã³ã³ã¹ãã©ã¯ã\x{...}ã§èª¬æããããã«ããã®16é²è¡šèš (16é²ã³ãŒãã»ãã€ã³ãå€)ãçŽæ¥äœ¿çšããŠãæ£èŠè¡šçŸã§ã衚ãããšãã§ããŸããããšãã°ãè£å©æåU+2011Fã¯ããµãã²ãŒãã»ãã¢\uD840\uDD1Fã®2ã€ã®é£ç¶ããUnicodeãšã¹ã±ãŒãã»ã·ãŒã±ã³ã¹ã®ä»£ããã«ã\x{2011F}ãšæå®ã§ããŸãã
Unicodeã¹ã¯ãªããããããã¯ãã«ããŽãªãããã³ãã€ããªã»ããããã£ã¯ãPerlãšåæ§ã«\pããã³\Pæ§æã§èšè¿°ããŸããå ¥åã«ããããã£propãå«ãŸããå Žåã\p{prop}ã¯ãããããŸããã\P{prop}ã¯ãããããŸããã
ã¹ã¯ãªããããããã¯ãã«ããŽãªãããã³ãã€ããªã»ããããã£ã¯ãæåã¯ã©ã¹ã®å éšããã³å€éšã®ã©ã¡ãã«ã䜿çšã§ããŸãã
ã¹ã¯ãªããã¯ãIsHiraganaã®ããã«ãæ¥é èŸIsãä»ããŠæå®ãããããŸãã¯ãscript=Hiraganaãsc=Hiraganaã®ããã«ãscriptããŒã¯ãŒã(ãŸãã¯ãã®ç瞮圢åŒsc)ã䜿çšããŠæå®ããŸãã
Patternã®ãµããŒãããæžäœåã¯ãUnicodeScript.forNameã«ãã£ãŠåãå
¥ããããå®çŸ©ãããæå¹ãªæžäœåã§ãã
ãããã¯ã¯ãInMongolianã®ããã«ãæ¥é èŸInãä»ããŠæå®ãããããŸãã¯ãblock=Mongolianãblk=Mongolianã®ããã«ãblockããŒã¯ãŒã(ãŸãã¯ãã®ç瞮圢åŒblk)ã䜿çšããŠæå®ããŸãã
Patternã®ãµããŒããããããã¯åã¯ãUnicodeBlock.forNameã«ãã£ãŠåãå
¥ããããå®çŸ©ãããæå¹ãªãããã¯åã§ãã
ã«ããŽãªã¯ãªãã·ã§ã³ã®æ¥é èŸIsã«ãã£ãŠæå®ã§ããŸãã\p{L}ãš\p{IsL}ã®ã©ã¡ããUnicodeæåã®ã«ããŽãªã瀺ããŸãã ã¹ã¯ãªããããããã¯ãšåãããã«ãã«ããŽãªãgeneral_category=Luãgc=Luã®ããã«ãããŒã¯ãŒãgeneral_category (ãŸãã¯ãã®ç瞮圢åŒgc)ã䜿çšããŠæå®ããããšãã§ããŸãã
ãµããŒããããŠããã«ããŽãªã¯ãCharacterã¯ã©ã¹ã§æå®ãããããŒãžã§ã³ã®The Unicode Standardã«èšèŒãããŠããŸãã ã«ããŽãªåã«ã€ããŠã¯ãæšæºã«èŠæºãšæ
å ±ãå®çŸ©ãããŠããŸãã
ãã€ããªã»ããããã£ã¯ãIsAlphabeticã®ããã«ãæ¥é èŸIsã䜿çšããŠæå®ããŸãã Patternã«ãã£ãŠãµããŒãããããã€ããªã»ããããã£ã¯æ¬¡ã®ãšããã§ã
次ã®å®çŸ©æžã®æåã¯ã©ã¹ãšPOSIXæåã¯ã©ã¹ã¯ãUNICODE_CHARACTER_CLASSãã©ã°ãæå®ãããŠããå ŽåãUnicodeæ£èŠè¡šçŸã®ä»é²C: äºææ§ããããã£ã®å§åã«é©åããŠããŸãã
| ã¯ã©ã¹ | ããã |
|---|---|
| \p{Lower} | å°æå:\p{IsLowercase} |
| \p{Upper} | 倧æå:\p{IsUppercase} |
| \p{ASCII} | ãã¹ãŠã®ASCIIæå: [\x00-\x7F] |
| \p{Alpha} | è±å:\p{IsAlphabetic} |
| \p{Digit} | 10鲿°å:p{IsDigit} |
| \p{Alnum} | è±æ°å:[\p{IsAlphabetic}\p{IsDigit}] |
| \p{Punct} | å¥èªç¹æå:p{IsPunctuation} |
| \p{Graph} | 衚瀺ã§ããæå: [^\p{IsWhite_Space}\p{gc=Cc}\p{gc=Cs}\p{gc=Cn}] |
| \p{Print} | ããªã³ãå¯èœæå: [\p{Graph}\p{Blank}&&[^\p{Cntrl}]] |
| \p{Blank} | 空çœãŸãã¯ã¿ã: [\p{IsWhite_Space}&&[^\p{gc=Zl}\p{gc=Zp}\x0a\x0b\x0c\x0d\x85]] |
| \p{Cntrl} | å¶åŸ¡æå: \p{gc=Cc} |
| \p{XDigit} | 16鲿°å: [\p{gc=Nd}\p{IsHex_Digit}] |
| \p{Space} | ç©ºçœæå:\p{IsWhite_Space} |
| \d | æ°å: \p{IsDigit} |
| \D | æ°å以å€: [^\d] |
| \s | ç©ºçœæå: \p{IsWhite_Space} |
| \S | éç©ºçœæå: [^\s] |
| \w | åèªæ§ææå: [\p{Alpha}\p{gc=Mn}\p{gc=Me}\p{gc=Mc}\p{Digit}\p{gc=Pc}\p{IsJoin_Control}] |
| \W | éåèªæå: [^\w] |
Patternãšã³ãžã³ã¯ãPerl 5ãšåãããé åºä»ãããã代æ¿ã«å¯ŸããåŸæ¥ã®NFAããŒã¹ã®ãããã³ã°ãå®è¡ããŸãã
ãã®ã¯ã©ã¹ã§ãµããŒããããŠããªãPerlæ§æ
å®çŸ©æžã¿ã®æåã¯ã©ã¹(Unicodeæå)
\X Unicode æ¡åŒµæžèšçŽ ã¯ã©ã¹ã¿ã«äžèŽ
åŸæ¹åç §æ§æãnçªç®ã®ãã£ããã£ãªã³ã°ã»ã°ã«ãŒãã®å Žå\g{n}ãååä»ããã£ããã£ãªã³ã°ã»ã°ã«ãŒãã®å Žå\g{åå}ã
ååä»ãã®æåæ§æããã®ååã«ããUnicodeæåã®å Žå\N{åå}ã
æ¡ä»¶ä»ãæ§æ(?(æ¡ä»¶)X)ããã³(?(æ¡ä»¶)X|Y)
å蟌ã¿ã³ãŒãæ§æ(?{ã³ãŒã})ããã³(??{ã³ãŒã})
å蟌ã¿ã³ã¡ã³ãæ§æ(?#comment)
ããªããã»ã¹æŒç®\l \uã\Lãããã³\Uã
ãã®ã¯ã©ã¹ã§ãµããŒããããŠããããPerlã§ãµããŒããããŠããªãæ§æã
æåã¯ã©ã¹ã®çµåãšäº€å·®(åè¿°)ã
Perlãšã®å€§ããªçžéç¹
Perlã§ã¯ã\1ãã\9ã¯åžžã«åŸæ¹åç §ãšè§£éãããŸãã9ãè¶ ããæ°åãããã¯ã¹ã©ãã·ã¥ã§ãšã¹ã±ãŒããããŠãããšãã¯ã察å¿ããæ°ã®éšåãã¿ãŒã³ãååšããå ŽåãåŸæ¹åç §ãšã¿ãªãããŸããååšããªãå Žåã¯ã8鲿°ã®ãšã¹ã±ãŒã(å¯èœãªå Žå)ãšã¿ãªãããŸãã ãã®ã¯ã©ã¹ã§ã¯ã8 鲿°ã®ãšã¹ã±ãŒãã¯åžžã«ãŒãã§å§ãŸããŸãã ãã®ã¯ã©ã¹ã§ã¯ã\1 - \9ã¯ãåžžã«åŸæ¹åç §ãšè§£éãããŸãããããã倧ããæ°åã¯ãæ£èŠè¡šçŸã®ãã®ç®æã«å¯Ÿå¿ããæ°ã®éšåãã¿ãŒã³ãååšããå Žåã¯ãåŸæ¹åç §ãšããŠåå ¥ããããŸããããã§ãªãå Žåã¯ããã®æ°åãæ¢åã®ã°ã«ãŒãçªå·ä»¥äžã«ãªããã1æ¡ã®æ°åã«ãªããŸã§ãæ¡ãæžããããŸãã
Perlã§ã¯ãæåŸã®ããããçµäºããå Žæãããããã®åéãèŠæ±ãããšãã¯ãgãã©ã°ã䜿çšããŸãã ãã®æ©èœã¯ãMatcherã¯ã©ã¹ã«ãã£ãŠæé»çã«æäŸãããŸããfindã¡ãœãããç¹°è¿ãåŒã³åºããšããããã£ããªã»ãããããªãããããæåŸã®ããããçµäºããå ŽæãããããæäœãåéããŸãã
Perl ã§ã¯ã衚çŸã®æäžäœã«åã蟌ãŸãããã©ã°ã衚çŸå šäœã«é©çšãããŸãã ãã®ã¯ã©ã¹ã®å蟌ã¿ãã©ã°ã¯ãåã蟌ãŸããå Žæã«ãããããããã®ç®æã§ã®ã¿æå¹ã«ãªããŸãããã©ã°ãã°ã«ãŒãå ã«åã蟌ãŸããŠããå Žåã¯ãPerlãšåæ§ã«ã°ã«ãŒãã®æåŸã§åŸ©å ãããŸãã
æ£èŠè¡šçŸæ§æã®åäœã®è©³çްã«ã€ããŠã¯ããMastering Regular Expressions, 3rd Editionã(Jeffrey E. F. FriedlèãO'Reilly and Associatesã2006幎)ãåç §ããŠãã ããã
String.split(String, int), String.split(String), çŽååããã圢åŒ| 修食åãšå | ãã£ãŒã«ã | 説æ |
|---|---|---|
static int |
CANON_EQ |
æ£èŠç䟡ãæå¹ã«ããŸãã
|
static int |
CASE_INSENSITIVE |
倧æåãšå°æåãåºå¥ããªããããã³ã°ãæå¹ã«ããŸãã
|
static int |
COMMENTS |
ãã¿ãŒã³å
ã§ç©ºçœãšã³ã¡ã³ãã䜿çšã§ããããã«ããŸãã
|
static int |
DOTALL |
DOTALLã¢ãŒããæå¹ã«ããŸãã
|
static int |
LITERAL |
ãã¿ãŒã³ã®ãªãã©ã«æ§æè§£æãæå¹ã«ããŸãã
|
static int |
MULTILINE |
è€æ°è¡ã¢ãŒããæå¹ã«ããŸãã
|
static int |
UNICODE_CASE |
Unicodeã«æºæ ãã倧æåãšå°æåãåºå¥ããªããããã³ã°ãæå¹ã«ããŸãã
|
static int |
UNICODE_CHARACTER_CLASS |
å®çŸ©æžã¿ã®æåã¯ã©ã¹ãšPOSIXæåã¯ã©ã¹ã®UnicodeããŒãžã§ã³ã䜿çšå¯èœã«ããŸãã
|
static int |
UNIX_LINES |
Unixã©ã€ã³ã»ã¢ãŒããæå¹ã«ããŸãã
|
| 修食åãšå | ã¡ãœãã | 説æ |
|---|---|---|
Predicate<String> |
asPredicate() |
æååãšãããããããã«äœ¿çšã§ãããã¬ãã£ã±ãŒããäœæããŸãã
|
static Pattern |
compile(String regex) |
æå®ãããæ£èŠè¡šçŸããã¿ãŒã³ã«ã³ã³ãã€ã«ããŸãã
|
static Pattern |
compile(String regex, int flags) |
æå®ããããã©ã°ã䜿çšããŠãæå®ãããæ£èŠè¡šçŸããã¿ãŒã³ã«ã³ã³ãã€ã«ããŸãã
|
int |
flags() |
ãã®ãã¿ãŒã³ã®ãããã»ãã©ã°ãè¿ããŸãã
|
Matcher |
matcher(CharSequence input) |
æå®ãããå
¥åãšãã®ãã¿ãŒã³ãããããããããã£ãäœæããŸãã
|
static boolean |
matches(String regex, CharSequence input) |
æå®ãããæ£èŠè¡šçŸãã³ã³ãã€ã«ããŠãæå®ãããå
¥åãšãã®æ£èŠè¡šçŸããããããŸãã
|
String |
pattern() |
ãã®ãã¿ãŒã³ã®ã³ã³ãã€ã«å
ã®æ£èŠè¡šçŸãè¿ããŸãã
|
static String |
quote(String s) |
æå®ããã
Stringã®ãªãã©ã«ã»ãã¿ãŒã³Stringãè¿ããŸãã |
String[] |
split(CharSequence input) |
ãã®ãã¿ãŒã³ã®ãããã«åºã¥ããŠãæå®ãããå
¥åã·ãŒã±ã³ã¹ãåå²ããŸãã
|
String[] |
split(CharSequence input, int limit) |
ãã®ãã¿ãŒã³ã®ãããã«åºã¥ããŠãæå®ãããå
¥åã·ãŒã±ã³ã¹ãåå²ããŸãã
|
Stream<String> |
splitAsStream(CharSequence input) |
ãã®ãã¿ãŒã³ã®ãããã«åºã¥ããŠãæå®ãããå
¥åã·ãŒã±ã³ã¹ããã¹ããªãŒã ãäœæããŸãã
|
String |
toString() |
ãã®ãã¿ãŒã³ã®æåå衚çŸãè¿ããŸãã
|
public static final int UNIX_LINES
ãã®ã¢ãŒãã§ã¯ãã\nãè¡æ«èšå·ä»¥å€ã¯ã.ã^ãããã³$ã®åäœã§èªèãããŸããã
Unixã©ã€ã³ã»ã¢ãŒãã¯ãå蟌ã¿ãã©ã°è¡šçŸ (?d)䜿çšããŠæå¹ã«ããããšãã§ããŸãã
public static final int CASE_INSENSITIVE
ããã©ã«ãã®å€§æåãšå°æåãåºå¥ããªããããã³ã°ã§ã¯ãUS-ASCIIæåã»ããã®æåã ãããããããŸãã Unicodeã«æºæ ãã倧æåãšå°æåãåºå¥ããªããããã³ã°ãæå¹ã«ããã«ã¯ãUNICODE_CASEãã©ã°ããã®ãã©ã°ãšçµã¿åãããŠæå®ããŸãã
倧æåãšå°æåãåºå¥ããªããããã³ã°ã¯ãå蟌ã¿ãã©ã°è¡šçŸ (?i)ã䜿çšããŠæå¹ã«ããããšãã§ããŸãã
ãã®ãã©ã°ãæå®ãããšãããã©ãŒãã³ã¹ããããã«äœäžããå ŽåããããŸãã
public static final int COMMENTS
ãã®ã¢ãŒãã§ã¯ã空çœã¯ç¡èŠããã#ã§å§ãŸãå蟌ã¿ã³ã¡ã³ãã¯è¡æ«ãŸã§ç¡èŠãããŸãã
ã³ã¡ã³ãã»ã¢ãŒãã¯ãå蟌ã¿ãã©ã°è¡šçŸ (?x)ã䜿çšããŠæå¹ã«ããããšãã§ããŸãã
public static final int MULTILINE
è€æ°è¡ã¢ãŒãã§ã¯ã衚çŸ^ãš$ã¯ãããããè¡æ«èšå·ãŸãã¯å ¥åã·ãŒã±ã³ã¹ã®æ«å°Ÿã®çŽåŸãŸãã¯çŽåã«ãããããŸãã ããã©ã«ãã§ã¯ããããã®è¡šçŸã¯å ¥åã·ãŒã±ã³ã¹å šäœã®å é ãšæ«å°Ÿã«ã ããããããŸãã
è€æ°è¡ã¢ãŒãã¯ãå蟌ã¿ãã©ã°è¡šçŸ (?m)ã䜿çšããŠæå¹ã«ããããšãã§ããŸãã
public static final int LITERAL
ãã®ãã©ã°ãæå®ãããŠããå Žåããã¿ãŒã³ãæå®ããå ¥åæååã¯ããªãã©ã«æåã®ã·ãŒã±ã³ã¹ãšããŠåŠçãããŸãã å ¥åã·ãŒã±ã³ã¹å ã®ã¡ã¿ãã£ã©ã¯ã¿ãŸãã¯ãšã¹ã±ãŒãã»ã·ãŒã±ã³ã¹ã«ãç¹å¥ãªæå³ã¯ãããŸããã
CASE_INSENSITIVEããã³UNICODE_CASEãã©ã°ããã®ãã©ã°ãšãšãã«äœ¿çšãããšããããã³ã°ã«å¯Ÿãã圱é¿ãç¶æãããŸãã ã»ãã®ãã©ã°ã¯äžèŠã«ãªããŸãã
ãªãã©ã«æ§æè§£æãæå¹ã«ããããã®å蟌ã¿ãã©ã°æåã¯ãããŸããã
public static final int DOTALL
DOTALLã¢ãŒãã§ã¯ã衚çŸ.ã¯è¡æ«èšå·ãå«ãä»»æã®æåã«ãããããŸãã ããã©ã«ãã§ã¯ããã®è¡šçŸã¯è¡æ«èšå·ã«ãããããŸããã
DOTALLã¢ãŒãã¯ãå蟌ã¿ãã©ã°è¡šçŸ (?s)ã䜿çšããŠæå¹ã«ããããšãã§ããŸãã (sã¯ãsingle-line (åäžè¡)ãã¢ãŒãã®ããŒã¢ããã¯ãPerlã§ã¯ããåŒã°ããŸãã)
public static final int UNICODE_CASE
ãã®ãã©ã°ãšCASE_INSENSITIVEãã©ã°ãåæã«æå®ããå Žåã¯ãUnicodeæšæºã«æºæ ãã倧æåãšå°æåãåºå¥ããªããããã³ã°ãè¡ãããŸãã ããã©ã«ãã®å€§æåãšå°æåãåºå¥ããªããããã³ã°ã§ã¯ãUS-ASCIIæåã»ããã®æåã ãããããããŸãã
Unicodeã«æºæ ãã倧æåãšå°æåãåºå¥ããªããããã³ã°ã¯ãå蟌ã¿ãã©ã°è¡šçŸ (?u)ã䜿çšããŠæå¹ã«ããããšãã§ããŸãã
ãã®ãã©ã°ãæå®ãããšãããã©ãŒãã³ã¹ãäœäžããå ŽåããããŸãã
public static final int CANON_EQ
ãã®ãã©ã°ãæå®ãããšãã¯ã2ã€ã®æåã®å®å šãªæ£èŠåè§£ããããããå Žåã«éãããããã®æåãããããããšã¿ãªãããŸãã ããšãã°ããã®ãã©ã°ãæå®ãããšã衚çŸãa\u030Aãã¯æååã\u00E5ãã«ãããããŸãã ããã©ã«ãã®ãããã³ã°ã§ã¯ãæ£èŠç䟡ãèæ ®ãããŸããã
æ£èŠç䟡ãæå¹ã«ããããã®å蟌ã¿ãã©ã°æåã¯ãããŸããã
ãã®ãã©ã°ãæå®ãããšãããã©ãŒãã³ã¹ãäœäžããå ŽåããããŸãã
public static final int UNICODE_CHARACTER_CLASS
ãã®ãã©ã°ãæå®ãããŠããå Žåã(US-ASCIIã®ã¿) å®çŸ©æžã¿ã®æåã¯ã©ã¹ãšPOSIXæåã¯ã©ã¹ã¯ãUnicode Technical Standard#18: Unicode Regular Expressionãã®ãAnnex C: Compatibility Propertiesãã«é©åããŠããŸãã
UNICODE_CHARACTER_CLASSã©ã€ã³ã»ã¢ãŒãã¯ãå蟌ã¿ãã©ã°è¡šçŸ (?U)䜿çšããŠæå¹ã«ããããšãã§ããŸãã
ãã©ã°ã¯UNICODE_CASEãæå³ããŠããŸããã€ãŸããUnicodeã«æºæ ãã倧æåãšå°æåãåºå¥ããªããããã³ã°ãæå¹ã«ããŸãã
ãã®ãã©ã°ãæå®ãããšãããã©ãŒãã³ã¹ãäœäžããå ŽåããããŸãã
public static Pattern compile(String regex)
regex - ã³ã³ãã€ã«ããã衚çŸPatternSyntaxException - 衚çŸã®æ§æãç¡å¹ã§ããå Žåpublic static Pattern compile(String regex, int flags)
regex - ã³ã³ãã€ã«ããã衚çŸflags - ãããã»ãã©ã°ãCASE_INSENSITIVEãMULTILINEãDOTALLãUNICODE_CASEãCANON_EQ, UNIX_LINESãLITERALãUNICODE_CHARACTER_CLASSãããã³COMMENTSãå«ããããšãã§ãããããã»ãã¹ã¯IllegalArgumentException - å®çŸ©æžã¿ãããã»ãã©ã°ã«å¯Ÿå¿ãããããå€ä»¥å€ã®å€ãflagsã«èšå®ãããŠããå ŽåPatternSyntaxException - 衚çŸã®æ§æãç¡å¹ã§ããå Žåpublic String pattern()
public String toString()
ãã®ãã¿ãŒã³ã®æåå衚çŸãè¿ããŸãã ããã¯ããã®ãã¿ãŒã³ã®ã³ã³ãã€ã«å ã®æ£èŠè¡šçŸã§ãã
public Matcher matcher(CharSequence input)
input - ããããããæåã·ãŒã±ã³ã¹public int flags()
public static boolean matches(String regex, CharSequence input)
ãã®ã¡ãœãããæ¬¡ã®åœ¢åŒã§åŒã³åºããšãäžèšã®åäœãè¡ãããŸãã
äžèšã®ã¡ãœããã¯ã次ã®è¡šçŸãšåæ§ã«åäœããŸããPattern.matches(regex, input);
Pattern.compile(regex).matcher(input).matches()
ãã¿ãŒã³ãç¹°è¿ã䜿çšããå Žåã¯ããã®ãã¿ãŒã³ãã³ã³ãã€ã«ããŠåå©çšããæ¹ããæ¯åãã®ã¡ãœãããåŒã³åºããããå¹ççã§ãã
regex - ã³ã³ãã€ã«ããã衚çŸinput - ããããããæåã·ãŒã±ã³ã¹PatternSyntaxException - 衚çŸã®æ§æãç¡å¹ã§ããå Žåpublic String[] split(CharSequence input, int limit)
ãã®ã¡ãœããããè¿ãããé åã¯ãå ¥åã·ãŒã±ã³ã¹ã®éšåæååã§æ§æãããŸãããããã®éšåæååã¯ããã®ãã¿ãŒã³ãšãããããå¥ã®éšåã·ãŒã±ã³ã¹ã«ãã£ãŠåå²ãããæååããå ¥åã·ãŒã±ã³ã¹ã®çµäºã«ãã£ãŠåå²ãããæååã§ãã é åå ã®éšåæååã¯ãå ¥åã·ãŒã±ã³ã¹å ã§çºçããé çªã«äžŠãã§ããŸãã ãã®ãã¿ãŒã³ãå ¥åã·ãŒã±ã³ã¹ã®éšåã·ãŒã±ã³ã¹ã«ãããããªãå ŽåãçµæãšããŠåŸãããé å㯠1 ã€ã®èŠçŽ ãã€ãŸãæåå圢åŒã®å ¥åã·ãŒã±ã³ã¹ã ãã§æ§æãããŸãã
å ¥åã·ãŒã±ã³ã¹ã®å é ã«ãæ£ã®å¹ ã®ããããããå Žåãçµæã®é åã®å é ã«ã空ã®å é éšåæååãå«ãŸããŸãã å é ã®ãŒãã®å¹ ã®äžèŽã§ã¯ããã®ãããªç©ºã®å é ã®éšåæååã¯çæãããŸããã
limitãã©ã¡ãŒã¿ã¯ããã®ãã¿ãŒã³ã®é©çšåæ°ãå¶åŸ¡ãããããçµæãšããŠåŸãããé åã®é·ãã«åœ±é¿ãåãŒããŸãã å¶énããŒããã倧ããå Žåããã®ãã¿ãŒã³ã¯æå€§ã§n - 1åãŸã§é©çšãããé åã®é·ãã¯n以äžãšãªããŸããé åã®æåŸã®ãšã³ããªã«ã¯ãæåŸã«äžèŽããåºåãæå以éã®å ¥åã·ãŒã±ã³ã¹ããã¹ãŠå«ãŸããŸãã nãè² ã®å€ã®å Žåããã®ãã¿ãŒã³ã®é©çšåæ°ãšé åã®é·ãã¯å¶éãããŸããã nããŒãã®å Žåããã®ãã¿ãŒã³ã®é©çšåæ°ãšé åã®é·ãã¯å¶éãããŸããããåŸç¶ã®ç©ºã®æååã¯ç Žæ£ãããŸãã
ããšãã°ãå ¥åã·ãŒã±ã³ã¹ãboo:and:fooãã¯ããããã®ãã©ã¡ãŒã¿ã«ãã£ãŠæ¬¡ã®ããã«åå²ãããŸãã
æ£èŠè¡šçŸ å¶é çµæ : 2 { "boo", "and:foo" } : 5 { "boo", "and", "foo" } : -2 { "boo", "and", "foo" } o 5 { "b", "", ":and:f", "", "" } o -2 { "b", "", ":and:f", "", "" } o 0 { "b", "", ":and:f" }
input - åå²ãããæåã·ãŒã±ã³ã¹limit - çµæã®ãããå€(äžèšã®ãšãã)public String[] split(CharSequence input)
ãã®ã¡ãœããã®åäœã¯ã2ã€ã®åŒæ°ãåãsplitã¡ãœããããæå®ãããå
¥åã·ãŒã±ã³ã¹ãšãŒãã®å¶éåŒæ°ãæå®ããŠåŒã³åºããå Žåãšåãã«ãªããŸãã ã€ãŸããçµæãšããŠåŸãããé
åã«ã¯åŸç¶ã®ç©ºã®æååã¯å«ãŸããŸããã
ããšãã°ãå ¥åã·ãŒã±ã³ã¹ãboo:and:fooãã¯ããããã®è¡šçŸã«ãã£ãŠæ¬¡ã®ããã«åå²ãããŸãã
æ£èŠè¡šçŸ çµæ : { "boo", "and", "foo" } o { "b", "", ":and:f" }
input - åå²ãããæåã·ãŒã±ã³ã¹public static String quote(String s)
Stringã®ãªãã©ã«ã»ãã¿ãŒã³Stringãè¿ããŸãã
ãã®ã¡ãœããã¯ããªãã©ã«ã»ãã¿ãŒã³ã§ãããã®ããã«æååsã«ãããããPatternã®äœæã«äœ¿çšå¯èœãªStringãçæããŸãã
s - ãªãã©ã«åããæååpublic Predicate<String> asPredicate()
public Stream<String> splitAsStream(CharSequence input)
ãã®ã¡ãœããããè¿ãããã¹ããªãŒã ã¯ãå ¥åã·ãŒã±ã³ã¹ã®åéšåæååã§æ§æãããŸãããããã®éšåæååã¯ããã®ãã¿ãŒã³ãšãããããå¥ã®éšåã·ãŒã±ã³ã¹ã«ãã£ãŠçµäºããæååããå ¥åã·ãŒã±ã³ã¹ã®æ«å°Ÿã«ãã£ãŠçµäºããæååã§ãã ã¹ããªãŒã å ã®éšåæååã¯ãå ¥åå ã§çºçããé çªã«äžŠãã§ããŸãã æ«å°Ÿã®ç©ºã®æååã¯ç Žæ£ãããã¹ããªãŒã å ã§æ€åºãããŸããã
ãã®ãã¿ãŒã³ãå ¥åã®éšåã·ãŒã±ã³ã¹ã«ãããããªãå ŽåãçµæãšããŠåŸãããã¹ããªãŒã 㯠1 ã€ã®èŠçŽ ãã€ãŸãæåå圢åŒã®å ¥åã·ãŒã±ã³ã¹ã ãã§æ§æãããŸãã
å ¥åã·ãŒã±ã³ã¹ã®å é ã«ãæ£ã®å¹ ã®ããããããå Žåãã¹ããªãŒã ã®å é ã«ã空ã®å é éšåæååãå«ãŸããŸãã å é ã®ãŒãã®å¹ ã®äžèŽã§ã¯ããã®ãããªç©ºã®å é ã®éšåæååã¯çæãããŸããã
å ¥åã·ãŒã±ã³ã¹ãå¯å€ã§ããå Žåã端æ«ã®ã¹ããªãŒã æäœã®å®è¡æã«äžå®ã«ä¿ãããå¿ èŠããããŸãã ããã§ãªããšã端æ«ã®ã¹ããªãŒã æäœã®çµæãäžå®ã«ãªããŸãã
input - åå²ãããæåã·ãŒã±ã³ã¹split(CharSequence) ãã°ãŸãã¯æ©èœãéä¿¡
詳现ãªAPIãªãã¡ã¬ã³ã¹ããã³éçºè
ããã¥ã¡ã³ãã«ã€ããŠã¯ãJava SEã®ããã¥ã¡ã³ããåç
§ããŠãã ããã ãã®ããã¥ã¡ã³ãã«ã¯ãæŠå¿µçãªæŠèŠãçšèªã®å®çŸ©ãåé¿æ¹æ³ãæå¹ãªã³ãŒãäŸãªã©ã®ãéçºè
ã察象ã«ãããã詳现ãªèª¬æãå«ãŸããŠããŸãã
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyãåç
§ããŠãã ããã