๐Ÿ‘ฉ‍๐Ÿ’ป/JavaScript

[Programmers] ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ์˜ ํŠน์ • ๋ฒ”์œ„๋ฅผ ๋งˆ์Šคํ‚นํ•˜๊ธฐ (JavaScript/์ •๊ทœ์‹)

ํ•œ๋‚˜ 2021. 1. 28. 19:52

๋ฌธ์ œ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ชจ๋ฐ”์ผ์€ ๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด ๊ณ ์ง€์„œ๋ฅผ ๋ณด๋‚ผ ๋•Œ ๊ณ ๊ฐ๋“ค์˜ ์ „ํ™”๋ฒˆํ˜ธ์˜ ์ผ๋ถ€๋ฅผ ๊ฐ€๋ฆฝ๋‹ˆ๋‹ค.

์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ ๋ฌธ์ž์—ด phone_number๋กœ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ „ํ™”๋ฒˆํ˜ธ์˜ ๋’ท 4์ž๋ฆฌ๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ์ˆซ์ž๋ฅผ ์ „๋ถ€ *์œผ๋กœ ๊ฐ€๋ฆฐ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

 

์ฝ”๋“œ

ํ’€์ด

replace ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด ์ •๊ทœ์‹ ํŒจํ„ด์„ ์ฒซ ๋ฒˆ์งธ ์ธ์ž๋กœ ๋„ฃ๊ณ , ๋งˆ์Šคํ‚นํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฌธ์ž๋ฅผ ๋‘ ๋ฒˆ์งธ ์ธ์ž๋กœ ๋„ฃ์–ด์ค€๋‹ค.

  • ?= : lookahead. ์ „๋ฐฉ ํƒ์ƒ‰์„ ์œ„ํ•œ ํŒจํ„ด์ด๋‹ค. ?= ์ด ๋‹ค์Œ์— ์˜ค๋Š” ๋ฌธ์ž๊ฐ€ ์ผ์น˜ํ•˜๋Š” ์˜์—ญ์—์„œ ์ œ์™ธ๋œ๋‹ค. ๋˜ํ•œ, ์ „๋ฐฉ ํƒ์ƒ‰์€ ํ•˜์œ„ ํ‘œํ˜„์‹์ฒ˜๋Ÿผ ์†Œ๊ด„ํ˜ธ๋กœ ๊ฐ์‹ธ์ค€๋‹ค.

 .+(?=:) ์˜ ๊ฒฝ์šฐ

http://www.abc.com

https://www.abc.com

http://www.abc.co.kr

 

  • ์œ„ ๊ฒฝ์šฐ๋Š” ์ž„์˜์˜ ๋ฌธ์ž๊ฐ€ ํ•œ ๋ฒˆ ์ด์ƒ ์—ฐ์†์ ์œผ๋กœ ๋“ฑ์žฅํ•˜๊ณ , ์ฝœ๋ก ์ด ๋“ฑ์žฅํ•˜๋Š” ๋ฌธ์ž์—ด ์ค‘์—์„œ ์ฝœ๋ก  ๋ฌธ์ž๋Š” ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ์˜์—ญ์—์„œ ์ œ์™ธ๋œ๋‹ค. ์ฆ‰, ์ฝœ๋ก  ์•ž ๋ฌธ์ž์—ด๋งŒ ํ•ด๋‹นํ•œ๋‹ค. 

.+(?=์›) ์˜ ๊ฒฝ์šฐ

1000์›

2000์›

100000์›

 

  • \d ๋Š” [0-9] ์™€ ๋™์ผํ•˜๋‹ค. ์ฆ‰, ์ˆซ์ž์™€ ๋งค์นญ๋œ๋‹ค.
  • m modifier : ๋ฉ€ํ‹ฐ ๋ผ์ธ์„ ์˜๋ฏธํ•œ๋‹ค.
  • g modifier : ๊ธ€๋กœ๋ฒŒ ํ”Œ๋ž˜๊ทธ.