๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

๋ฌธ์ž์—ด ์ž๋ฅด๊ธฐ(Substring, Split) ์‚ฌ์šฉ๋ฒ• & ์˜ˆ์ œ

by 5566 2023. 11. 2.

1. Substring์ด๋ž€?

Substring์€ ๋ฌธ์ž์—ด์—์„œ ์ผ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค.
์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด์—์„œ ์›ํ•˜๋Š” ๋ถ€๋ถ„๋งŒ์„ ์„ ํƒํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ์ด๋ฉฐ, ๋ฌธ์ž์—ด์„ ์ž๋ฅผ ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์˜ ์ผ๋ถ€๋ฅผ ์ถ”์ถœํ•  ๋•Œ์—๋Š” ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ณดํ†ต ์ธ๋ฑ์Šค๋Š” 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋ฉฐ, ์‹œ์ž‘ ์ธ๋ฑ์Šค๋Š” ํฌํ•จํ•˜๊ณ  ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋Š” ํฌํ•จํ•˜์ง€ ์•Š๋Š” ๊ตฌ๊ฐ„์œผ๋กœ ์ถ”์ถœ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฌธ์ž์—ด "Hello, World!"์—์„œ Substring์„ ์‚ฌ์šฉํ•˜์—ฌ "Hello"๋ผ๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, ์‹œ์ž‘ ์ธ๋ฑ์Šค๋Š” 0์ด๊ณ  ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋Š” 5๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

์ฆ‰, Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ์›ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ์œ„์น˜์™€ ์ข…๋ฃŒ ์œ„์น˜๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์ถ”์ถœํ•œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์€ ์›๋ณธ ๋ฌธ์ž์—ด๊ณผ๋Š” ๋‹ค๋ฅธ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค.

Substring์€ ์ฃผ๋กœ ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ์—์„œ ๊ธด ๋ฌธ์ž์—ด์„ ๋‹ค๋ฃฐ ๋•Œ์— ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋˜๋ฉฐ, ๋‹ค์–‘ํ•œ ๋ฌธ์ž์—ด ์กฐ์ž‘ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.

- Substring์˜ ๊ฐœ๋…๊ณผ ์‚ฌ์šฉ๋ฒ• ์†Œ๊ฐœ

Substring์€ ๋ฌธ์ž์—ด์—์„œ ์›ํ•˜๋Š” ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค.
์ผ๋ฐ˜์ ์œผ๋กœ ๋ฌธ์ž์—ด์„ ์ž๋ฅผ ๋•Œ ์‚ฌ์šฉ๋˜๋ฉฐ, ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋ฅผ ์ง€์ •ํ•˜์—ฌ ์›ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

substring() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์˜ ์ผ๋ถ€๋ฅผ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฉ”์„œ๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜•์‹์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

"๋ฌธ์ž์—ด".substring(์‹œ์ž‘ ์ธ๋ฑ์Šค, ์ข…๋ฃŒ ์ธ๋ฑ์Šค)
  • ์‹œ์ž‘ ์ธ๋ฑ์Šค: ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜๋Š” ์ •์ˆ˜๊ฐ’์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’์€ ์ถ”์ถœํ•˜๋ ค๋Š” ๋ฌธ์ž์—ด์˜ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. (0๋ถ€ํ„ฐ ์‹œ์ž‘)
  • ์ข…๋ฃŒ ์ธ๋ฑ์Šค: ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ๋งˆ์ง€๋ง‰ ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜๋Š” ์ •์ˆ˜๊ฐ’์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’์€ ์ถ”์ถœํ•˜๋ ค๋Š” ๋ฌธ์ž์—ด์˜ ๋‹ค์Œ ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. (ํฌํ•จํ•˜์ง€ ์•Š์Œ)

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฌธ์ž์—ด "Hello, World!"์—์„œ "Hello"๋ผ๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, substring(0, 5)์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•˜์—ฌ ์›ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ์‹œ์ž‘ ์ธ๋ฑ์Šค๋Š” 0์ด๊ณ  ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋Š” 5์ž…๋‹ˆ๋‹ค.

Substring์˜ ๊ฒฐ๊ณผ๋กœ ์ถ”์ถœํ•œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜๋˜๋ฉฐ, ์ด๋ฅผ ๋ณ€์ˆ˜์— ์ €์žฅํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ ์ž‘์—…์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์˜ ์ผ๋ถ€๋ฅผ ์ถ”์ถœํ•˜๋Š” ๋ฐฉ๋ฒ• ์„ค๋ช…

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์˜ ์ผ๋ถ€๋ฅผ ์ถ”์ถœํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Step 1: substring() ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ

"๋ฌธ์ž์—ด".substring(์‹œ์ž‘ ์ธ๋ฑ์Šค, ์ข…๋ฃŒ ์ธ๋ฑ์Šค)

์œ„์˜ ํ˜•์‹์œผ๋กœ substring() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ "๋ฌธ์ž์—ด"์€ ์›๋ณธ ๋ฌธ์ž์—ด์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋Š” ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

Step 2: ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ์ข…๋ฃŒ ์ธ๋ฑ์Šค ์„ค์ •

  • ์‹œ์ž‘ ์ธ๋ฑ์Šค: ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜๋Š” ์ •์ˆ˜๊ฐ’์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’์€ ์ถ”์ถœํ•˜๋ ค๋Š” ๋ฌธ์ž์—ด์˜ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. (0๋ถ€ํ„ฐ ์‹œ์ž‘)
  • ์ข…๋ฃŒ ์ธ๋ฑ์Šค: ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ๋งˆ์ง€๋ง‰ ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜๋Š” ์ •์ˆ˜๊ฐ’์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’์€ ์ถ”์ถœํ•˜๋ ค๋Š” ๋ฌธ์ž์—ด์˜ ๋‹ค์Œ ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. (ํฌํ•จํ•˜์ง€ ์•Š์Œ)

Step 3: ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์‚ฌ์šฉ ๋˜๋Š” ์ €์žฅ
substring() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์€ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค. ์ด ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋ณ€์ˆ˜์— ์ €์žฅํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ ์ž‘์—…์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฌธ์ž์—ด "Hello, World!"์—์„œ "Hello"๋ผ๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ๋ฅผ ์œ„ํ•ด substring() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

String str = "Hello, World!";
String subStr = str.substring(0, 5);

์œ„์˜ ์ฝ”๋“œ์—์„œ substring(0, 5)๋Š” ๋ฌธ์ž์—ด์˜ ์ธ๋ฑ์Šค 0๋ถ€ํ„ฐ ์ธ๋ฑ์Šค 4๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜์—ฌ ๋ณ€์ˆ˜ subStr์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ ๋ณ€์ˆ˜ subStr์—๋Š” "Hello"๋ผ๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์›ํ•˜๋Š” ๋Œ€๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์˜ ์ผ๋ถ€๋ฅผ ์ถ”์ถœํ•˜๋Š” ๋ฐฉ๋ฒ• ์„ค๋ช…

๋ฌธ์ž์—ด์—์„œ ์›ํ•˜๋Š” ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜๊ธฐ ์œ„ํ•ด Substring์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

Step 1: substring() ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ

Substring์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” substring() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์€ ํ˜•์‹์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

"๋ฌธ์ž์—ด".substring(์‹œ์ž‘ ์ธ๋ฑ์Šค, ์ข…๋ฃŒ ์ธ๋ฑ์Šค)

์—ฌ๊ธฐ์„œ "๋ฌธ์ž์—ด"์€ ์›๋ณธ ๋ฌธ์ž์—ด์„ ๋‚˜ํƒ€๋‚ด๊ณ , ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋Š” ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

Step 2: ์‹œ์ž‘ ์ธ๋ฑ์Šค์™€ ์ข…๋ฃŒ ์ธ๋ฑ์Šค ์„ค์ •

  • ์‹œ์ž‘ ์ธ๋ฑ์Šค: ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜๋Š” ์ •์ˆ˜๊ฐ’์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’์€ ์ถ”์ถœํ•˜๋ ค๋Š” ๋ฌธ์ž์—ด์˜ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. (0๋ถ€ํ„ฐ ์‹œ์ž‘)
  • ์ข…๋ฃŒ ์ธ๋ฑ์Šค: ์ถ”์ถœํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ๋งˆ์ง€๋ง‰ ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜๋Š” ์ •์ˆ˜๊ฐ’์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’์€ ์ถ”์ถœํ•˜๋ ค๋Š” ๋ฌธ์ž์—ด์˜ ๋‹ค์Œ ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. (ํฌํ•จํ•˜์ง€ ์•Š์Œ)

Step 3: ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด ์‚ฌ์šฉ ๋˜๋Š” ์ €์žฅ

substring() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์€ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค. ์ด ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋ณ€์ˆ˜์— ์ €์žฅํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ ์ž‘์—…์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฌธ์ž์—ด "Hello, World!"์—์„œ "Hello"๋ผ๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ๋ฅผ ์œ„ํ•ด substring() ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

String str = "Hello, World!";
String subStr = str.substring(0, 5);

์œ„์˜ ์ฝ”๋“œ์—์„œ substring(0, 5)๋Š” ๋ฌธ์ž์—ด์˜ ์ธ๋ฑ์Šค 0๋ถ€ํ„ฐ ์ธ๋ฑ์Šค 4๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜์—ฌ ๋ณ€์ˆ˜ subStr์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ ๋ณ€์ˆ˜ subStr์—๋Š” "Hello"๋ผ๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์›ํ•˜๋Š” ๋Œ€๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

2. Substring์˜ ํ™œ์šฉ ์˜ˆ์ œ

Substring์€ ๋ฌธ์ž์—ด์„ ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์–ด ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด Substring์˜ ํ™œ์šฉ ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์˜ˆ์ œ 1: ์ด๋ฆ„ ์ถ”์ถœ

๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ์˜ˆ์ œ๋กœ, ๋ฌธ์ž์—ด์—์„œ ์ด๋ฆ„๋งŒ ์ถ”์ถœํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. "ํ™๊ธธ๋™"์ด๋ผ๋Š” ๋ฌธ์ž์—ด์—์„œ "๊ธธ๋™"๋งŒ ์ถ”์ถœํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

String name = "ํ™๊ธธ๋™";
String lastName = name.substring(1);

์œ„์˜ ์ฝ”๋“œ์—์„œ substring(1)์€ ์ธ๋ฑ์Šค 1๋ถ€ํ„ฐ ๋ฌธ์ž์—ด์˜ ๋๊นŒ์ง€์ธ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜์—ฌ ๋ณ€์ˆ˜ lastName์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ lastName์—๋Š” "๊ธธ๋™"์ด๋ผ๋Š” ๋ฌธ์ž์—ด์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ์ œ 2: ์ „ํ™”๋ฒˆํ˜ธ ํ˜•์‹ ๋ณ€๊ฒฝ

๋ฌธ์ž์—ด์—์„œ ํŠน์ • ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ์˜ ํ˜•์‹์„ ๋ณ€๊ฒฝํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

String phoneNumber = "01012345678";
String formattedPhoneNumber = phoneNumber.substring(0, 3) + "-" + phoneNumber.substring(3, 7) + "-" + phoneNumber.substring(7);

์œ„์˜ ์ฝ”๋“œ์—์„œ substring()์„ ์‚ฌ์šฉํ•˜์—ฌ phoneNumber ๋ฌธ์ž์—ด์—์„œ ๊ฐ ๋ถ€๋ถ„์„ ์ถ”์ถœํ•œ ํ›„, "-" ๋ฌธ์ž๋ฅผ ์‚ฝ์ž…ํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด์ธ formattedPhoneNumber์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ formattedPhoneNumber์—๋Š” "010-1234-5678"์ด๋ผ๋Š” ์ „ํ™”๋ฒˆํ˜ธ ํ˜•์‹์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ์ œ 3: ์ด๋ฉ”์ผ ๋„๋ฉ”์ธ ์ถ”์ถœ

๋ฌธ์ž์—ด์—์„œ ํŠน์ • ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜์—ฌ ๋‹ค๋ฅธ ์ฒ˜๋ฆฌ ์ž‘์—…์— ํ™œ์šฉํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฉ”์ผ ์ฃผ์†Œ์—์„œ ๋„๋ฉ”์ธ์„ ์ถ”์ถœํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

String email = "example@example.com";
int atIndex = email.indexOf("@");
String domain = email.substring(atIndex + 1);

์œ„์˜ ์ฝ”๋“œ์—์„œ indexOf() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ "@" ๊ธฐํ˜ธ์˜ ์ธ๋ฑ์Šค๋ฅผ ์ฐพ๊ณ , substring() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ "@" ์ดํ›„์˜ ๋„๋ฉ”์ธ ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜์—ฌ ๋ณ€์ˆ˜ domain์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ domain์—๋Š” "example.com"์ด๋ผ๋Š” ๋„๋ฉ”์ธ ์ •๋ณด๊ฐ€ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

์œ„์˜ ์˜ˆ์ œ๋“ค์€ Substring์˜ ํ™œ์šฉ ์˜ˆ์ œ ์ค‘ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค. Substring์€ ๋ฌธ์ž์—ด์„ ๋‹ค์–‘ํ•˜๊ฒŒ ์กฐ์ž‘ํ•˜๋Š”๋ฐ ์œ ์šฉํ•œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ํ•„์š”์— ๋”ฐ๋ผ Substring์„ ์ ์ ˆํžˆ ํ™œ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- ํŠน์ • ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘๋ถ€ํ„ฐ ๋๊นŒ์ง€๋ฅผ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์˜ˆ์ œ ์„ค๋ช…

์•„๋ž˜์˜ ์˜ˆ์ œ๋Š” ๋ฌธ์ž์—ด "Hello, World!"์—์„œ "Hello, World!" ์ „์ฒด๋ฅผ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

String str = "Hello, World!";
String subStr = str.substring(0);

์œ„์˜ ์ฝ”๋“œ์—์„œ substring(0)์€ ๋ฌธ์ž์—ด์˜ ์ธ๋ฑ์Šค 0๋ถ€ํ„ฐ ๋๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜์—ฌ ๋ณ€์ˆ˜ subStr์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ ์‹œ์ž‘ ์ธ๋ฑ์Šค๋ฅผ 0์œผ๋กœ ์„ค์ •ํ•œ ๊ฒƒ์€ ๋ฌธ์ž์—ด์˜ ์ฒซ ๋ฒˆ์งธ ๋ฌธ์ž๋ถ€ํ„ฐ ์ถ”์ถœํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. ์ดํ›„์— ๋”ฐ๋กœ ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋ฅผ ์„ค์ •ํ•˜์ง€ ์•Š๊ณ  ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋น„์›Œ๋‘๋ฉด, ์›๋ณธ ๋ฌธ์ž์—ด์˜ ๋๊นŒ์ง€ ์ถ”์ถœ๋ฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ ํ•ด์„

์œ„์˜ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด subStr ๋ณ€์ˆ˜์—๋Š” "Hello, World!"๋ผ๋Š” ๋ฌธ์ž์—ด์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์›๋ณธ ๋ฌธ์ž์—ด "Hello, World!" ์ „์ฒด๋ฅผ ์ถ”์ถœํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

์ด๋ ‡๊ฒŒ ํŠน์ • ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘๋ถ€ํ„ฐ ๋๊นŒ์ง€๋ฅผ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์œผ๋ฉด, ์ถ”์ถœ๋œ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฅธ ์ฒ˜๋ฆฌ ์ž‘์—…์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด๊ณผ ํ•จ๊ป˜ ๊ฒฐํ•ฉํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

String newStr = "The message is: " + subStr;
System.out.println(newStr);

์œ„์˜ ์ฝ”๋“œ๋Š” ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด๊ณผ ํ•จ๊ป˜ ๊ฒฐํ•ฉํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด newStr์„ ์ƒ์„ฑํ•˜๊ณ  ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด "The message is: Hello, World!"๋ผ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘๋ถ€ํ„ฐ ๋๊นŒ์ง€๋ฅผ ์ถ”์ถœํ•˜๋ฉด, ํ•ด๋‹น ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- ์ง€์ •๋œ ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์˜ˆ์ œ ์„ค๋ช…

์•„๋ž˜์˜ ์˜ˆ์ œ๋Š” ๋ฌธ์ž์—ด "Hello, World!"์—์„œ ์ธ๋ฑ์Šค 7๋ถ€ํ„ฐ ๊ธธ์ด๊ฐ€ 5์ธ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

String str = "Hello, World!";
String subStr = str.substring(7, 12);

์œ„์˜ ์ฝ”๋“œ์—์„œ substring(7, 12)์€ ๋ฌธ์ž์—ด์˜ ์ธ๋ฑ์Šค 7๋ถ€ํ„ฐ 12์ง์ „๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜์—ฌ ๋ณ€์ˆ˜ subStr์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ ์‹œ์ž‘ ์ธ๋ฑ์Šค๋ฅผ 7๋กœ ์„ค์ •ํ•œ ๊ฒƒ์€ ๋ฌธ์ž์—ด์˜ 8๋ฒˆ์งธ ๋ฌธ์ž๋ถ€ํ„ฐ ์ถ”์ถœํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋Š” 12๋ฅผ ์„ค์ •ํ•˜์˜€๋Š”๋ฐ, ์ด๋Š” 11๋ฒˆ์งธ ๋ฌธ์ž๊นŒ์ง€๋ฅผ ํฌํ•จํ•˜์—ฌ ์ถ”์ถœํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ ํ•ด์„

์œ„์˜ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด subStr ๋ณ€์ˆ˜์—๋Š” "World"๋ผ๋Š” ๋ฌธ์ž์—ด์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์›๋ณธ ๋ฌธ์ž์—ด "Hello, World!"์—์„œ ์ธ๋ฑ์Šค 7๋ถ€ํ„ฐ 11๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

์ด๋ ‡๊ฒŒ ์ง€์ •๋œ ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์œผ๋ฉด, ์ถ”์ถœ๋œ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฅธ ์ฒ˜๋ฆฌ ์ž‘์—…์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด๊ณผ ํ•จ๊ป˜ ๊ฒฐํ•ฉํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

String newStr = "The word is: " + subStr;
System.out.println(newStr);

์œ„์˜ ์ฝ”๋“œ๋Š” ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด๊ณผ ๊ฒฐํ•ฉํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด newStr์„ ์ƒ์„ฑํ•˜๊ณ  ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด "The word is: World"๋ผ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋ฉด, ํ•ด๋‹น ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- ์ง€์ •๋œ ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์˜ˆ์ œ ์„ค๋ช…

์•„๋ž˜์˜ ์˜ˆ์ œ๋Š” ๋ฌธ์ž์—ด "Hello, World!"์—์„œ ์ธ๋ฑ์Šค 7๋ถ€ํ„ฐ ๊ธธ์ด๊ฐ€ 5์ธ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

String str = "Hello, World!";
String subStr = str.substring(7, 12);

์œ„์˜ ์ฝ”๋“œ์—์„œ substring(7, 12)์€ ๋ฌธ์ž์—ด์˜ ์ธ๋ฑ์Šค 7๋ถ€ํ„ฐ 12์ง์ „๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜์—ฌ ๋ณ€์ˆ˜ subStr์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ ์‹œ์ž‘ ์ธ๋ฑ์Šค๋ฅผ 7๋กœ ์„ค์ •ํ•œ ๊ฒƒ์€ ๋ฌธ์ž์—ด์˜ 8๋ฒˆ์งธ ๋ฌธ์ž๋ถ€ํ„ฐ ์ถ”์ถœํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. ์ข…๋ฃŒ ์ธ๋ฑ์Šค๋Š” 12๋ฅผ ์„ค์ •ํ•˜์˜€๋Š”๋ฐ, ์ด๋Š” 11๋ฒˆ์งธ ๋ฌธ์ž๊นŒ์ง€๋ฅผ ํฌํ•จํ•˜์—ฌ ์ถ”์ถœํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ ํ•ด์„

์œ„์˜ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด subStr ๋ณ€์ˆ˜์—๋Š” "World"๋ผ๋Š” ๋ฌธ์ž์—ด์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์›๋ณธ ๋ฌธ์ž์—ด "Hello, World!"์—์„œ ์ธ๋ฑ์Šค 7๋ถ€ํ„ฐ 11๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

์ด๋ ‡๊ฒŒ ์ง€์ •๋œ ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์œผ๋ฉด, ์ถ”์ถœ๋œ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฅธ ์ฒ˜๋ฆฌ ์ž‘์—…์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด๊ณผ ํ•จ๊ป˜ ๊ฒฐํ•ฉํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

String newStr = "The word is: " + subStr;
System.out.println(newStr);

์œ„์˜ ์ฝ”๋“œ๋Š” ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฅธ ๋ฌธ์ž์—ด๊ณผ ๊ฒฐํ•ฉํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด newStr์„ ์ƒ์„ฑํ•˜๊ณ  ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด "The word is: World"๋ผ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

Substring์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ ์œ„์น˜์—์„œ๋ถ€ํ„ฐ ์ผ์ •ํ•œ ๊ธธ์ด์˜ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋ฉด, ํ•ด๋‹น ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ํ™œ์šฉํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3. Split์ด๋ž€?

Split์ด๋ž€?

Split์€ ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค. ์ฆ‰, ์›๋ณธ ๋ฌธ์ž์—ด์„ ์ง€์ •ํ•œ ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์ œ ์„ค๋ช…

์•„๋ž˜์˜ ์˜ˆ์ œ๋Š” ๋ฌธ์ž์—ด "apple,banana,grape"๋ฅผ ์ฝค๋งˆ(,)๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

String str = "apple,banana,grape";
String[] fruits = str.split(",");

์œ„์˜ ์ฝ”๋“œ์—์„œ split(",")์€ ๋ฌธ์ž์—ด์„ ์ฝค๋งˆ(,)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋ฌธ์ž์—ด ๋ฐฐ์—ด๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ์ฝค๋งˆ๋ฅผ ๋งŒ๋‚˜๋ฉด ํ•ด๋‹น ์œ„์น˜์—์„œ ๋ฌธ์ž์—ด์„ ์ž˜๋ผ์„œ ๋ฐฐ์—ด์— ์ €์žฅํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ ํ•ด์„

์œ„์˜ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด fruits๋ผ๋Š” ๋ฌธ์ž์—ด ๋ฐฐ์—ด์—๋Š” "apple", "banana", "grape"๋ผ๋Š” ์„ธ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์›๋ณธ ๋ฌธ์ž์—ด "apple,banana,grape"๋ฅผ ์ฝค๋งˆ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋‚˜๋ˆˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด ๋ฐฐ์—ด์—์„œ ์›ํ•˜๋Š” ์›์†Œ๋ฅผ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

System.out.println(fruits[0]);  // "apple" ์ถœ๋ ฅ
System.out.println(fruits[1]);  // "banana" ์ถœ๋ ฅ
System.out.println(fruits[2]);  // "grape" ์ถœ๋ ฅ

์œ„์˜ ์ฝ”๋“œ๋Š” fruits ๋ฐฐ์—ด์˜ ๊ฐ ์›์†Œ๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด "apple", "banana", "grape"๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋“ค์„ ํ•„์š”ํ•œ ๋Œ€๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ๊ฐ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- Split์˜ ๊ฐœ๋…๊ณผ ์‚ฌ์šฉ๋ฒ• ์†Œ๊ฐœ

Split์˜ ๊ฐœ๋…

Split์€ ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์›๋ณธ ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋กœ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Split์€ ์ฃผ๋กœ ์ž…๋ ฅ๊ฐ’์„ ํŒŒ์‹ฑํ•˜๊ฑฐ๋‚˜ ํŠน์ • ํŒจํ„ด์„ ๊ฐ€์ง„ ๋ฌธ์ž์—ด์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

Split์˜ ์‚ฌ์šฉ๋ฒ•

Split ๋ฉ”์„œ๋“œ์˜ ๊ธฐ๋ณธ ํ˜•ํƒœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

String[] split(String regex)
  • regex: ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•  ์ •๊ทœ ํ‘œํ˜„์‹ ๋ฌธ์ž์—ด

split ๋ฉ”์„œ๋“œ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•  ๋ฌธ์ž์—ด์„ ์ง€์ •ํ•˜๊ณ , ์ •๊ทœ ํ‘œํ˜„์‹์„ ํ™œ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ •๊ทœ ํ‘œํ˜„์‹์€ ๋ฌธ์ž์—ด ํŒจํ„ด์„ ๊ธฐ์ˆ ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํŠน์ˆ˜ํ•œ ๋ฌธ์ž์™€ ๊ธฐํ˜ธ์˜ ์กฐํ•ฉ์ž…๋‹ˆ๋‹ค.

์˜ˆ์ œ ์„ค๋ช…

์•„๋ž˜์˜ ์˜ˆ์ œ์—์„œ๋Š” ๋ฌธ์ž์—ด "apple,banana,grape"๋ฅผ ์ฝค๋งˆ(,)๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

String str = "apple,banana,grape";
String[] fruits = str.split(",");

์œ„์˜ ์ฝ”๋“œ์—์„œ split(",")์€ ๋ฌธ์ž์—ด์„ ์ฝค๋งˆ(,)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฌธ์ž์—ด ๋ฐฐ์—ด๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ fruits์—๋Š” "apple", "banana", "grape"๋ผ๋Š” ์„ธ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ ํ•ด์„

์œ„์˜ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด fruits๋ผ๋Š” ๋ฌธ์ž์—ด ๋ฐฐ์—ด์—๋Š” "apple", "banana", "grape"๋ผ๋Š” ์„ธ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์›๋ณธ ๋ฌธ์ž์—ด "apple,banana,grape"๋ฅผ ์ฝค๋งˆ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋‚˜๋ˆˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด ๋ฐฐ์—ด์—์„œ ์›ํ•˜๋Š” ์›์†Œ๋ฅผ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

System.out.println(fruits[0]);  // "apple" ์ถœ๋ ฅ
System.out.println(fruits[1]);  // "banana" ์ถœ๋ ฅ
System.out.println(fruits[2]);  // "grape" ์ถœ๋ ฅ

์œ„์˜ ์ฝ”๋“œ๋Š” fruits ๋ฐฐ์—ด์˜ ๊ฐ ์›์†Œ๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด "apple", "banana", "grape"๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋“ค์„ ํ•„์š”ํ•œ ๋Œ€๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ๊ฐ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

String[] ๋ถ„๋ฆฌ๋œ๋ฌธ์ž์—ด๋ฐฐ์—ด = ์›๋ณธ๋ฌธ์ž์—ด.split(๊ตฌ๋ถ„์ž);

์œ„์˜ ํ˜•์‹์„ ํ™œ์šฉํ•˜์—ฌ ์ ์ ˆํ•œ ๊ตฌ๋ถ„์ž์™€ ์ •๊ทœ ํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๊ณ , ๋ฐ˜ํ™˜๋œ ๋ฌธ์ž์—ด ๋ฐฐ์—ด์„ ํ™œ์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๋ฐฉ๋ฒ• ์„ค๋ช…

Split ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ๋‚˜๋ˆ„๊ธฐ

Split ๋ฉ”์„œ๋“œ๋Š” ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋ฌธ์ž์—ด ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ์‚ฌ์šฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

String[] split(String regex)
  • regex: ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•  ์ •๊ทœ ํ‘œํ˜„์‹ ๋ฌธ์ž์—ด

split ๋ฉ”์„œ๋“œ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ตฌ๋ถ„์ž๋Š” ๋ฌธ์ž์—ด ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ •๊ทœ ํ‘œํ˜„์‹์œผ๋กœ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๊ตฌ๋ถ„์ž๋ฅผ ํฐ๋”ฐ์˜ดํ‘œ(")๋กœ ๋ฌถ์–ด์„œ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์ œ ์„ค๋ช…

์•„๋ž˜์˜ ์˜ˆ์ œ์—์„œ๋Š” ๋ฌธ์ž์—ด "apple,banana,grape"์„ ์ฝค๋งˆ(,)๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

String str = "apple,banana,grape";
String[] fruits = str.split(",");

์œ„์˜ ์ฝ”๋“œ์—์„œ split(",")์€ ๋ฌธ์ž์—ด์„ ์ฝค๋งˆ(,)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฌธ์ž์—ด ๋ฐฐ์—ด๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ fruits์—๋Š” "apple", "banana", "grape"๋ผ๋Š” ์„ธ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ ํ•ด์„

์œ„์˜ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด fruits๋ผ๋Š” ๋ฌธ์ž์—ด ๋ฐฐ์—ด์—๋Š” "apple", "banana", "grape"๋ผ๋Š” ์„ธ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์›๋ณธ ๋ฌธ์ž์—ด "apple,banana,grape"๋ฅผ ์ฝค๋งˆ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋‚˜๋ˆˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด ๋ฐฐ์—ด์—์„œ ์›ํ•˜๋Š” ์›์†Œ๋ฅผ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

System.out.println(fruits[0]);  // "apple" ์ถœ๋ ฅ
System.out.println(fruits[1]);  // "banana" ์ถœ๋ ฅ
System.out.println(fruits[2]);  // "grape" ์ถœ๋ ฅ

์œ„์˜ ์ฝ”๋“œ๋Š” fruits ๋ฐฐ์—ด์˜ ๊ฐ ์›์†Œ๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด "apple", "banana", "grape"๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋“ค์„ ํ•„์š”ํ•œ ๋Œ€๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ๊ฐ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ํŠน์ • ํŒจํ„ด์„ ์ฐพ๋Š” ๋“ฑ์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๋ฐฉ๋ฒ• ์„ค๋ช…

Split ๋ฉ”์„œ๋“œ๋Š” ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›๋ณธ ๋ฌธ์ž์—ด์„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋กœ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ์—๋Š” Split์˜ ์‚ฌ์šฉ๋ฒ•๊ณผ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ์ด๋ฅผ ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

Split ๋ฉ”์„œ๋“œ ์‚ฌ์šฉ๋ฒ•

Split ๋ฉ”์„œ๋“œ์˜ ๊ธฐ๋ณธ ํ˜•ํƒœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

String[] split(String regex)
  • regex: ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•  ์ •๊ทœ ํ‘œํ˜„์‹ ๋ฌธ์ž์—ด

split ๋ฉ”์„œ๋“œ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ตฌ๋ถ„์ž๋Š” ๋ฌธ์ž์—ด ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ •๊ทœ ํ‘œํ˜„์‹์œผ๋กœ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ตฌ๋ถ„์ž๋ฅผ ๋ฌธ์ž์—ด๋กœ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๊ตฌ๋ถ„์ž๋ฅผ ํฐ๋”ฐ์˜ดํ‘œ(")๋กœ ๋ฌถ์–ด์„œ ์ „๋‹ฌํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ์ œ ์„ค๋ช…

์•„๋ž˜์˜ ์˜ˆ์ œ์—์„œ๋Š” ๋ฌธ์ž์—ด "apple,banana,grape"์„ ์ฝค๋งˆ(,)๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

String str = "apple,banana,grape";
String[] fruits = str.split(",");

์œ„์˜ ์ฝ”๋“œ์—์„œ split(",")์€ ๋ฌธ์ž์—ด์„ ์ฝค๋งˆ(,)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฌธ์ž์—ด ๋ฐฐ์—ด๋กœ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ fruits์—๋Š” "apple", "banana", "grape"๋ผ๋Š” ์„ธ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ ํ•ด์„

์œ„์˜ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด fruits๋ผ๋Š” ๋ฌธ์ž์—ด ๋ฐฐ์—ด์—๋Š” "apple", "banana", "grape"๋ผ๋Š” ์„ธ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์›๋ณธ ๋ฌธ์ž์—ด "apple,banana,grape"๋ฅผ ์ฝค๋งˆ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋‚˜๋ˆˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด ๋ฐฐ์—ด์—์„œ ์›ํ•˜๋Š” ์›์†Œ๋ฅผ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

System.out.println(fruits[0]);  // "apple" ์ถœ๋ ฅ
System.out.println(fruits[1]);  // "banana" ์ถœ๋ ฅ
System.out.println(fruits[2]);  // "grape" ์ถœ๋ ฅ

์œ„์˜ ์ฝ”๋“œ๋Š” fruits ๋ฐฐ์—ด์˜ ๊ฐ ์›์†Œ๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด "apple", "banana", "grape"๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

Split์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋“ค์„ ํ•„์š”ํ•œ ๋Œ€๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ๊ฐ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ํŠน์ • ํŒจํ„ด์„ ์ฐพ๋Š” ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

4. Split์˜ ํ™œ์šฉ ์˜ˆ์ œ

Split ๋ฉ”์„œ๋“œ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์˜ˆ์ œ 1: ์ด๋ฉ”์ผ ์ฃผ์†Œ ๋ถ„๋ฆฌํ•˜๊ธฐ

๋‹ค์Œ์€ ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ๋„๋ฉ”์ธ์„ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

String email = "john.doe@example.com";
String[] parts = email.split("@");

String username = parts[0];
String domain = parts[1];

์œ„์˜ ์ฝ”๋“œ์—์„œ split("@")๋Š” ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ @ ๊ธฐํ˜ธ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ parts ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ parts ๋ฐฐ์—ด์˜ ์ฒซ ๋ฒˆ์งธ ์ธ๋ฑ์Šค์ธ parts[0]์—๋Š” ์‚ฌ์šฉ์ž ์ด๋ฆ„์ด, ๋‘ ๋ฒˆ์งธ ์ธ๋ฑ์Šค์ธ parts[1]์—๋Š” ๋„๋ฉ”์ธ์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ์ œ 2: ๋ฌธ์žฅ ๋ถ„๋ฆฌํ•˜๊ธฐ

๋‹ค์Œ์€ ์ฃผ์–ด์ง„ ๋ฌธ์žฅ์„ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋‹จ์–ด๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ฐ๊ฐ์˜ ๋‹จ์–ด๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

String sentence = "Java is a programming language";
String[] words = sentence.split(" ");

for (String word : words) {
    System.out.println(word);
}

์œ„์˜ ์ฝ”๋“œ์—์„œ split(" ")๋Š” ์ฃผ์–ด์ง„ ๋ฌธ์žฅ์„ ๊ณต๋ฐฑ(" ")์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ words ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ for ๋ฃจํ”„๋ฅผ ์ด์šฉํ•˜์—ฌ words ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์›์†Œ๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์ œ 3: ์ˆซ์ž ๋ถ„๋ฆฌํ•˜๊ธฐ

๋‹ค์Œ์€ ์ฃผ์–ด์ง„ ์ˆซ์ž ๋ฌธ์ž์—ด์„ ์ฝค๋งˆ(,)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ฐ ์ˆซ์ž๋ฅผ ํ•ฉ์‚ฐํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

String numbers = "1,2,3,4,5";
String[] numberStrings = numbers.split(",");
int sum = 0;

for (String numberString : numberStrings) {
    int number = Integer.parseInt(numberString);
    sum += number;
}

System.out.println("Sum: " + sum);

์œ„์˜ ์ฝ”๋“œ์—์„œ split(",")๋Š” ์ฃผ์–ด์ง„ ์ˆซ์ž ๋ฌธ์ž์—ด์„ ์ฝค๋งˆ(,)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ numberStrings ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„ for ๋ฃจํ”„๋ฅผ ์ด์šฉํ•˜์—ฌ numberStrings ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์›์†Œ๋ฅผ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜ํ•œ ํ›„ sum ๋ณ€์ˆ˜์— ํ•ฉ์‚ฐํ•ฉ๋‹ˆ๋‹ค. ์ตœ์ข…์ ์œผ๋กœ sum์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

Split์„ ํ™œ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ๋“ค์€ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์—์„œ ์‹ค์ œ๋กœ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฐ์ดํ„ฐ๋ฅผ ํŒŒ์‹ฑํ•˜์—ฌ ์›ํ•˜๋Š” ์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ํŠน์ • ๋ฌธ์ž์—ด ํŒจํ„ด์„ ์ฐพ๋Š” ๋“ฑ์˜ ์ž‘์—…์— ์œ ์šฉํ•˜๊ฒŒ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- ๋ฌธ์ž์—ด์„ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์˜ˆ์ œ

Split ๋ฉ”์„œ๋“œ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

String sentence = "Java is a programming language";
String[] words = sentence.split(" ");

์œ„์˜ ์ฝ”๋“œ์—์„œ split(" ")๋Š” ์ค‘๊ฐ„์— ์žˆ๋Š” ๊ณต๋ฐฑ(" ")์„ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์ž์—ด sentence์„ ๋ถ„๋ฆฌํ•˜์—ฌ words ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ ์„ค๋ช…

  • String sentence = "Java is a programming language";
    ๋ฌธ์ž์—ด sentence์—๋Š” ๊ณต๋ฐฑ์„ ํฌํ•จํ•œ ๋ฌธ์žฅ์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

  • String[] words = sentence.split(" ");
    split ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•˜์—ฌ sentence ๋ฌธ์ž์—ด์„ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ words ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, words ๋ฐฐ์—ด์€ "Java", "is", "a", "programming", "language"๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

์ด์ œ words ๋ฐฐ์—ด์—๋Š” sentence์—์„œ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌ๋œ ๊ฐ ๋‹จ์–ด๋“ค์ด ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

System.out.println(words[0]);  // "Java" ์ถœ๋ ฅ
System.out.println(words[1]);  // "is" ์ถœ๋ ฅ
System.out.println(words[2]);  // "a" ์ถœ๋ ฅ
System.out.println(words[3]);  // "programming" ์ถœ๋ ฅ
System.out.println(words[4]);  // "language" ์ถœ๋ ฅ

์œ„์˜ ์ฝ”๋“œ๋Š” words ๋ฐฐ์—ด์˜ ๊ฐ ์ธ๋ฑ์Šค๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ๊ฐ ๋‹จ์–ด๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด "Java", "is", "a", "programming", "language"๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ, words ๋ฐฐ์—ด์„ ์ด์šฉํ•˜์—ฌ ๋ถ„๋ฆฌ๋œ ๋‹จ์–ด๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ํŠน์ • ํŒจํ„ด์„ ์ฐพ๋Š” ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Split์„ ํ™œ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๊ฐ ์š”์†Œ๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ ์š”์†Œ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ž์œ ๋กญ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

- ํŠน์ • ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ

Split ๋ฉ”์„œ๋“œ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

String numbers = "1,2,3,4,5";
String[] numberStrings = numbers.split(",");

์œ„์˜ ์ฝ”๋“œ์—์„œ split(",")๋Š” ์ฝค๋งˆ(,)๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด numbers๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ numberStrings ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

์ฝ”๋“œ ์„ค๋ช…

  • String numbers = "1,2,3,4,5";
    ๋ฌธ์ž์—ด numbers์—๋Š” ์ฝค๋งˆ(,)๋ฅผ ํฌํ•จํ•œ ์ˆซ์ž ๋ฌธ์ž์—ด์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

  • String[] numberStrings = numbers.split(",");
    split ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•˜์—ฌ numbers ๋ฌธ์ž์—ด์„ ์ฝค๋งˆ(,)๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ„๋ฆฌํ•œ ํ›„, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด๋“ค์„ numberStrings ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, numberStrings ๋ฐฐ์—ด์€ "1", "2", "3", "4", "5"๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

์ด์ œ numberStrings ๋ฐฐ์—ด์—๋Š” numbers์—์„œ ์ฝค๋งˆ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌ๋œ ๊ฐ ์ˆซ์ž ๋ฌธ์ž์—ด๋“ค์ด ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

int sum = 0;
for (String numberString : numberStrings) {
    int number = Integer.parseInt(numberString);
    sum += number;
}
System.out.println("Sum: " + sum);

์œ„์˜ ์ฝ”๋“œ๋Š” numberStrings ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ์ •์ˆ˜๋กœ ๋ณ€ํ™˜ํ•œ ํ›„, ๊ฐ ์ˆซ์ž๋ฅผ ํ•ฉ์‚ฐํ•˜์—ฌ ์ดํ•ฉ์„ ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด ์˜ˆ์ œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด "Sum: 15"๋ผ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ, numberStrings ๋ฐฐ์—ด์„ ์ด์šฉํ•˜์—ฌ ๋ถ„๋ฆฌ๋œ ์ˆซ์ž๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ํŠน์ • ํŒจํ„ด์„ ์ฐพ๋Š” ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Split์„ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๊ตฌ๋ถ„๋œ ๊ฐ ์š”์†Œ๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ ์š”์†Œ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ž์œ ๋กญ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํŠน์ • ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

ํŠน์ • ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋Š” ์˜ˆ์ œ

๊ฐ€๋”์€ ํŠน์ • ๋ฌธ์ž์—ด์„ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•ด์•ผ ํ•  ๋•Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด Split ๋ฉ”์„œ๋“œ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํŠน์ • ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ์˜ˆ์ œ์—์„œ๋Š” ๋งˆ์นจํ‘œ(.)๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ์˜ˆ์ œ ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค.

String sentence = "Hello.World.Java";
String[] words = sentence.split("\\.");

์œ„์˜ ์ฝ”๋“œ์—์„œ split("\\.")๋Š” ๋ฐฑ์Šฌ๋ž˜์‹œ์™€ ๋งˆ์นจํ‘œ(\.)๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด sentence์„ ๋ถ„๋ฆฌํ•˜์—ฌ words ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์˜ํ•  ์ ์€ ์ •๊ทœ ํ‘œํ˜„์‹์—์„œ ๋งˆ์นจํ‘œ๋Š” ํŠน๋ณ„ํ•œ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๋ฏ€๋กœ, ๋ฐฑ์Šฌ๋ž˜์‹œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด์Šค์ผ€์ดํ”„(escape) ์ฒ˜๋ฆฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

์ฝ”๋“œ ์„ค๋ช…

  • String sentence = "Hello.World.Java";
    ๋ฌธ์ž์—ด sentence์—๋Š” ๋งˆ์นจํ‘œ๋ฅผ ํฌํ•จํ•œ ๋ฌธ์žฅ์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

  • String[] words = sentence.split("\\.");
    split ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•˜์—ฌ sentence ๋ฌธ์ž์—ด์„ ๋ฐฑ์Šฌ๋ž˜์‹œ์™€ ๋งˆ์นจํ‘œ๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ„๋ฆฌํ•œ ํ›„, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด๋“ค์„ words ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, words ๋ฐฐ์—ด์€ "Hello", "World", "Java"๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

์ด์ œ words ๋ฐฐ์—ด์—๋Š” sentence์—์„œ ๋งˆ์นจํ‘œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌ๋œ ๊ฐ ๋‹จ์–ด๋“ค์ด ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

for (String word : words) {
    System.out.println(word);
}

์œ„์˜ ์ฝ”๋“œ๋Š” words ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋Š” ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์ด ์˜ˆ์ œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด "Hello", "World", "Java"๊ฐ€ ๊ฐ ์ค„์— ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ, words ๋ฐฐ์—ด์„ ์ด์šฉํ•˜์—ฌ ๋ถ„๋ฆฌ๋œ ๋‹จ์–ด๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ํŠน์ • ํŒจํ„ด์„ ์ฐพ๋Š” ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠน์ • ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋ฉด, ๋ถ„๋ฆฌ๋œ ๊ฐ ์š”์†Œ๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ ์š”์†Œ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ ์ž‘์—…์„ ์ž์œ ๋กญ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

5. Substring๊ณผ Split์˜ ์ฐจ์ด์ 

๋ฌธ์ž์—ด์„ ๋‹ค๋ฃฐ ๋•Œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๋‘ ๊ฐ€์ง€ ๋ฉ”์„œ๋“œ์ธ substring๊ณผ split์˜ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

Substring ๋ฉ”์„œ๋“œ

substring ๋ฉ”์„œ๋“œ๋Š” ๋ฌธ์ž์—ด์—์„œ ํŠน์ • ์ธ๋ฑ์Šค ๋ฒ”์œ„์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์—์„œ ์ผ๋ถ€๋ฅผ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

String message = "Hello, World!";
String subMessage = message.substring(7, 12);

์œ„์˜ ์ฝ”๋“œ์—์„œ substring(7, 12)๋Š” ๋ฌธ์ž์—ด message์—์„œ ์ธ๋ฑ์Šค 7๋ถ€ํ„ฐ ์ธ๋ฑ์Šค 11๊นŒ์ง€์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜์—ฌ subMessage์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ subMessage๋Š” "World"๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

Split ๋ฉ”์„œ๋“œ

split ๋ฉ”์„œ๋“œ๋Š” ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

String sentence = "Hello, World!";
String[] words = sentence.split(" ");

์œ„์˜ ์ฝ”๋“œ์—์„œ split(" ")์€ ๋ฌธ์ž์—ด sentence๋ฅผ ๊ณต๋ฐฑ์„ ๊ตฌ๋ถ„์ž๋กœ ์‚ฌ์šฉํ•˜์—ฌ ๋ถ„๋ฆฌํ•œ ํ›„, ๋ถ„๋ฆฌ๋œ ๊ฐ ๋‹จ์–ด๋“ค์„ words ๋ฐฐ์—ด์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ words ๋ฐฐ์—ด์€ "Hello,"์™€ "World!"๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

์ฐจ์ด์ 

์ฃผ์š”ํ•œ ์ฐจ์ด์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • substring ๋ฉ”์„œ๋“œ๋Š” ์›๋ณธ ๋ฌธ์ž์—ด์—์„œ ํŠน์ • ์ธ๋ฑ์Šค ๋ฒ”์œ„์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋Š” ๊ฒƒ์ด๊ณ , split ๋ฉ”์„œ๋“œ๋Š” ์›๋ณธ ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

  • substring ๋ฉ”์„œ๋“œ๋Š” ๋ฐ˜ํ™˜๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋‹ค์‹œ ๋ฌธ์ž์—ด๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, split ๋ฉ”์„œ๋“œ๋Š” ๋ถ„๋ฆฌ๋œ ๊ฐ ์š”์†Œ๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • substring ๋ฉ”์„œ๋“œ๋Š” ์ธ๋ฑ์Šค ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๋ฏ€๋กœ, ์›ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ •ํ™•ํžˆ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด, split ๋ฉ”์„œ๋“œ๋Š” ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋ฏ€๋กœ, ๊ตฌ๋ถ„์ž๋งŒ์œผ๋กœ๋Š” ์›ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๊ธฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ, ๊ธฐ๋Šฅ์— ๋”ฐ๋ผ substring ๋ฉ”์„œ๋“œ์™€ split ๋ฉ”์„œ๋“œ๋ฅผ ์ ์ ˆํžˆ ์„ ํƒํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฃจ๋ฉด ๋ฉ๋‹ˆ๋‹ค. substring์€ ์›ํ•˜๋Š” ๋ฌธ์ž์—ด์„ ์ •ํ™•ํžˆ ์ถ”์ถœํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋ฉฐ, split์€ ๊ตฌ๋ถ„์ž๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

- Substring๊ณผ Split์˜ ๋ชฉ์ ๊ณผ ์‚ฌ์šฉ๋ฒ•์˜ ์ฐจ์ด ์„ค๋ช…

Substring๊ณผ Split์€ ๋‘˜ ๋‹ค ๋ฌธ์ž์—ด์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฉ”์„œ๋“œ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ๊ฐ๊ฐ์˜ ๋ชฉ์ ๊ณผ ์‚ฌ์šฉ๋ฒ•์—๋Š” ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

Substring ๋ฉ”์„œ๋“œ

Substring ๋ฉ”์„œ๋“œ๋Š” ์›๋ณธ ๋ฌธ์ž์—ด์—์„œ ํŠน์ • ์ธ๋ฑ์Šค ๋ฒ”์œ„์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด(substring)์„ ์ถ”์ถœํ•˜๋Š” ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ฃผ๋กœ ์ž˜๋ผ๋‚ธ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฅธ ์šฉ๋„๋กœ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

Substring ๋ฉ”์„œ๋“œ์˜ ์‚ฌ์šฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

String originalString = "Hello, World!";
String extractedString = originalString.substring(startIdx, endIdx);

์œ„์˜ ์ฝ”๋“œ์—์„œ startIdx๋Š” ์ถ”์ถœํ•˜๋ ค๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ์ธ๋ฑ์Šค์ด๊ณ , endIdx๋Š” ์ถ”์ถœํ•˜๋ ค๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ๋ ์ธ๋ฑ์Šค์ž…๋‹ˆ๋‹ค. ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์€ extractedString ๋ณ€์ˆ˜์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ฃผ์˜ํ•  ์ ์€ endIdx ์ธ๋ฑ์Šค๋Š” ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์— ํฌํ•จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

Split ๋ฉ”์„œ๋“œ

Split ๋ฉ”์„œ๋“œ๋Š” ์›๋ณธ ๋ฌธ์ž์—ด์„ ํŠน์ • ๊ตฌ๋ถ„์ž(delimiter)๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๊ฐ๊ฐ์˜ ์š”์†Œ๋กœ ๊ฐ€์ง€๋Š” ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ฃผ๋กœ ๊ตฌ๋ถ„๋œ ๋ฌธ์ž์—ด์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜, ํ•ด๋‹น ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํŒจํ„ด์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

Split ๋ฉ”์„œ๋“œ์˜ ์‚ฌ์šฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

String originalString = "Hello, World!";
String[] splitStrings = originalString.split(delimiter);

์œ„์˜ ์ฝ”๋“œ์—์„œ delimiter๋Š” ์›ํ•˜๋Š” ๊ตฌ๋ถ„์ž์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์›๋ณธ ๋ฌธ์ž์—ด์„ ๊ณต๋ฐฑ์œผ๋กœ ๋ถ„๋ฆฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด " "์™€ ๊ฐ™์€ ํ˜•ํƒœ๋กœ delimiter๋ฅผ ์„ค์ •ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋ถ„๋ฆฌ๋œ ๊ฐ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์€ splitStrings ๋ฐฐ์—ด์˜ ์š”์†Œ๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

์ฐจ์ด์ 

Substring ๋ฉ”์„œ๋“œ์™€ Split ๋ฉ”์„œ๋“œ์˜ ์ฐจ์ด์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • Substring ๋ฉ”์„œ๋“œ๋Š” ์ถ”์ถœํ•  ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ์ธ๋ฑ์Šค ๋ฒ”์œ„๋ฅผ ์ง€์ •ํ•˜์—ฌ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค. Split ๋ฉ”์„œ๋“œ๋Š” ๊ตฌ๋ถ„์ž(delimiter)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • Substring ๋ฉ”์„œ๋“œ๋Š” ์ถ”์ถœ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๋‹ค์‹œ ๋ฌธ์ž์—ด๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Split ๋ฉ”์„œ๋“œ๋Š” ๋ถ„๋ฆฌ๋œ ๊ฐ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Substring ๋ฉ”์„œ๋“œ๋Š” ์›ํ•˜๋Š” ๊ตฌ๊ฐ„์˜ ๋ฌธ์ž์—ด์„ ์ •ํ™•ํ•˜๊ฒŒ ์ถ”์ถœํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. Split ๋ฉ”์„œ๋“œ๋Š” ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์›ํ•˜๋Š” ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ์ถ”์ถœํ•˜๊ธฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ, ์ถ”์ถœํ•  ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ์œ„์น˜๋ฅผ ์ •ํ™•ํžˆ ์•Œ๊ณ  ์žˆ๋‹ค๋ฉด Substring ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ , ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„ํ•˜์—ฌ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•œ๋‹ค๋ฉด Split ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

- ๊ฐ๊ฐ์˜ ๊ฒฝ์šฐ์— ์ ํ•ฉํ•œ ์ƒํ™ฉ๊ณผ ํšจ์œจ์„ฑ ๋น„๊ต

Substring๊ณผ Split์€ ๊ฐ๊ฐ ๋‹ค๋ฅธ ์ƒํ™ฉ์—์„œ ์ ํ•ฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํšจ์œจ์„ฑ ์ธก๋ฉด์—์„œ๋„ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜์—์„œ ๊ฐ๊ฐ์˜ ๊ฒฝ์šฐ์™€ ํšจ์œจ์„ฑ ๋น„๊ต๋ฅผ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

Substring์˜ ์ ํ•ฉํ•œ ์ƒํ™ฉ๊ณผ ํšจ์œจ์„ฑ

Substring์€ ์ฃผ๋กœ ์›๋ณธ ๋ฌธ์ž์—ด์—์„œ ํŠน์ • ์ธ๋ฑ์Šค ๋ฒ”์œ„๋ฅผ ์ถ”์ถœํ•˜๋Š” ๊ฒฝ์šฐ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ํŠน์ • ๋ฌธ์ž์—ด์„ ์ฐพ๊ณ ์ž ํ•  ๋•Œ, ๋ฌธ์ž์—ด์˜ ์œ„์น˜๋ฅผ ์•Œ๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Substring์€ ๋ฌธ์ž์—ด์„ ๋ณต์ œํ•˜์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ, ์›๋ณธ ๋ฌธ์ž์—ด์ด ํฌ๊ณ , ์ถ”์ถœํ•  ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ž‘์€ ๊ฒฝ์šฐ์—๋Š” ๋ฉ”๋ชจ๋ฆฌ์˜ ๋‚ญ๋น„๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ๋ฌธ์ž์—ด์„ ๋ณต์ œํ•˜๋Š” ์‹œ๊ฐ„๊ณผ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋ฏ€๋กœ, ์ฒ˜๋ฆฌ ์†๋„๊ฐ€ ๋Š๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Split์˜ ์ ํ•ฉํ•œ ์ƒํ™ฉ๊ณผ ํšจ์œจ์„ฑ

Split์€ ์ฃผ๋กœ ์›๋ณธ ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์—ฌ๋Ÿฌ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒฝ์šฐ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฌธ์žฅ์„ ๋‹จ์–ด๋กœ ๋ถ„๋ฆฌํ•˜๊ฑฐ๋‚˜, CSV ํŒŒ์ผ์„ ํŒŒ์‹ฑํ•˜์—ฌ ๊ฐ ์—ด ๊ฐ’์„ ์ถ”์ถœํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Split์€ ์›๋ณธ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ์›๋ณธ ๋ฌธ์ž์—ด์—์„œ ๋ถ„๋ฆฌ๋œ ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์–ด ๋ฉ”๋ชจ๋ฆฌ์˜ ๋‚ญ๋น„๊ฐ€ ์ ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๊ฐ€ ๊ฒฐ์ •๋˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

Split์€ ๊ตฌ๋ถ„์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜๋Š”๋งŒํผ ๋ฌธ์ž์—ด์˜ ๊ธธ์ด์— ๋”ฐ๋ผ ์ฒ˜๋ฆฌ ์‹œ๊ฐ„์ด ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, ๊ตฌ๋ถ„์ž๊ฐ€ ๋งŽ๊ฑฐ๋‚˜ ๊ธธ์ด๊ฐ€ ๊ธด ๊ฒฝ์šฐ์—๋Š” ์ฒ˜๋ฆฌ ์†๋„๊ฐ€ ๋Š๋ ค์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ ํ•ฉํ•œ ์‚ฌ์šฉ ์˜ˆ์‹œ

  • Substring: ๋ฌธ์ž์—ด์—์„œ ํŠน์ • ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜์—ฌ ๋น„๊ต๋‚˜ ๊ฒ€์ƒ‰์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ฃผ๋ฏผ๋“ฑ๋ก๋ฒˆํ˜ธ์˜ ์ƒ์ผ ๋ถ€๋ถ„์„ ์ถ”์ถœํ•˜์—ฌ ํŠน์ • ๋‚ ์งœ์™€ ๋น„๊ตํ•˜๋Š” ๊ฒฝ์šฐ์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Split: ๋ฌธ์žฅ์„ ๊ณต๋ฐฑ์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ฐ ๋‹จ์–ด๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹จ์–ด ์ˆ˜๋ฅผ ์„ธ๊ฑฐ๋‚˜, ๊ฐ ๋‹จ์–ด๋ฅผ ์ •๋ ฌํ•˜๋Š” ๊ฒฝ์šฐ์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํšจ์œจ์„ฑ ๋น„๊ต

Substring์€ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๊ณผ ๋ณต์ œ ์ž‘์—…์ด ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํšจ์œจ์„ฑ ์ธก๋ฉด์—์„œ๋Š” Split์— ๋น„ํ•ด ๋Š๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ๋งŒ์•ฝ ์›๋ณธ ๋ฌธ์ž์—ด์ด ํฌ๊ณ , ์ถ”์ถœํ•  ๋ถ€๋ถ„ ๋ฌธ์ž์—ด์ด ์ž‘์€ ๊ฒฝ์šฐ์—๋Š” ๋ฉ”๋ชจ๋ฆฌ์˜ ๋‚ญ๋น„๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

Split์€ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋ฉด์—์„œ๋Š” ๋ฐฐ์—ด์˜ ํฌ๊ธฐ์— ์˜ํ–ฅ์„ ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์—, ๋ถ„๋ฆฌ๋œ ๋ฌธ์ž์—ด์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜, ๋Œ€์ฒด๋กœ Split์€ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ์ธก๋ฉด์—์„œ ๋ณด๋‹ค ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ, Substring์€ ์ •ํ™•ํ•œ ๋ฌธ์ž์—ด ์ถ”์ถœ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์— ํ™œ์šฉํ•˜๊ณ , Split์€ ๋ฌธ์ž์—ด์„ ๊ตฌ๋ถ„ํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์š”์†Œ๋กœ ๋ถ„๋ฆฌํ•ด์•ผ ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ํšจ์œจ์„ฑ ์ธก๋ฉด์—์„œ๋Š” Split์ด ๋ณด๋‹ค ํšจ์œจ์ ์ด๋ฏ€๋กœ, ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด Split์„ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋Œ“๊ธ€