๐Ÿ’พ
Home
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (54)
    • ๐Ÿ“šSTUDY (51)
      • ๐Ÿ‘“hololens&MRTK (4)
      • ๐Ÿ“œ3D slicer&DICOM&ImageJ (0)
      • ๐Ÿ‘€ coding test๋Œ€๋น„ (4)
      • ๐Ÿ”ฅPytorch ML&DL (14)
      • ๐Ÿ’พ์ž๋ฃŒ๊ตฌ์กฐ (3)
      • ๐ŸŽซDart&Flutter (6)
      • ๐ŸŽ‡๋‹คํ• (dafit.me) (12)
      • CUDA (1)
      • Etc (7)
    • ๐Ÿ“ƒPAPER (2)
    • ๐Ÿ€DAILY (1)
Home
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (54)
    • ๐Ÿ“šSTUDY (51)
      • ๐Ÿ‘“hololens&MRTK (4)
      • ๐Ÿ“œ3D slicer&DICOM&ImageJ (0)
      • ๐Ÿ‘€ coding test๋Œ€๋น„ (4)
      • ๐Ÿ”ฅPytorch ML&DL (14)
      • ๐Ÿ’พ์ž๋ฃŒ๊ตฌ์กฐ (3)
      • ๐ŸŽซDart&Flutter (6)
      • ๐ŸŽ‡๋‹คํ• (dafit.me) (12)
      • CUDA (1)
      • Etc (7)
    • ๐Ÿ“ƒPAPER (2)
    • ๐Ÿ€DAILY (1)
๋ธ”๋กœ๊ทธ ๋‚ด ๊ฒ€์ƒ‰
GitHub

๐Ÿ’พ

AtoZ; ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ๊ธฐ๋กํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•ฉ๋‹ˆ๋‹คโœ

  • ๐Ÿ“šSTUDY/๐ŸŽ‡๋‹คํ• (dafit.me)

    [DF905] 01. Telephone Number

    2020. 2. 26.

    by. ํ•ด๋Š”์„ 

    01. Telephone Number

    http://www.dafit.me/question/?q=YToyOntzOjEyOiJrZXl3b3JkX3R5cGUiO3M6MzoiYWxsIjtzOjQ6InBhZ2UiO2k6MTt9&bmode=view&idx=2643277&t=board

     

    [DF905] Regular Expression (์ •๊ทœ ํ‘œํ˜„์‹) : ๋‹คํ•, ๋ฐ์ดํ„ฐ์‚ฌ์ด์–ธ์Šค ์—ฐ์Šต๋ฌธ์ œ

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

    www.dafit.me

     

     

    ์ € 3๊ฐœ์˜ ํฌ๋งท์— ๋งž๋Š” ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ REPLACEPHONE ์œผ๋กœ ์น˜ํ™˜ํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ๋‹ค.

     

    import re

    ์ผ๋‹จ ์ •๊ทœ ํ‘œํ˜„์‹์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด, re๋ฅผ import ํ•ด์ค€๋‹ค.

     

    ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋‹ค์Œ, ๊ฐ๊ฐ ์‹œ๋‚ด, ์„œ์šธ, ๊ธฐํƒ€ ์ง€์—ญ์˜ ํŒจํ„ด์„ ๋งŒ๋“ค์–ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค. ๋จผ์ € ์‹œ๋‚ด๋ฅผ ๋ณด์ž.

     

    (N)XXX-XXXX

     

    N์€ 3๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž์ด๊ณ  X๋Š” 0๋ถ€ํ„ฐ 9๊นŒ์ง€์˜ ์ˆซ์ž์ธ๋ฐ, ์ฒซ ๋ฒˆ์งธ ์ž๋ฆฌ๊ฐ€ ์žˆ์–ด๋„ ๋˜๊ณ  ์—†์–ด๋„ ๋œ๋‹ค.

     

    sinae = re.compile(r'[3-9]?\d{3}[-]\d{4}$') 

    ๊ทธ๋ž˜์„œ ๋ฒ”์œ„๊ฐ€ 3-9์ธ N์€ [3-9]๋กœ ๋‚˜ํƒ€๋‚ด์—ˆ๊ณ , ์žˆ์–ด๋„ ๋˜๊ณ  ์—†์–ด๋„ ๋˜๋‹ˆ๊นŒ ? ๋ฅผ ๋ถ™์—ฌ ์ฃผ์—ˆ๋‹ค.

    ๋’ค์˜ X๋“ค์€ ๋ฒ”์œ„๊ฐ€ 0-9๋ผ์„œ ์ˆซ์ž๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” \d๋ฅผ ์ด์šฉํ–ˆ๊ณ , ๋ฌด์กฐ๊ฑด 3์ž๋ฆฌ, 4์ž๋ฆฌ ์—ฌ์•ผ ํ•˜๋‹ˆ๊นŒ { }๋กœ ๋ฐ˜๋ณต ๋ฒ”์œ„๋ฅผ ์ •ํ•ด ์ฃผ์—ˆ๋‹ค. ๋˜ํ•œ, ๋ฐฑ์Šฌ๋ž˜์‰ฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ฌธ์ž์—ด ์•ž์— r์„ ํ‘œ๊ธฐํ•ด ์ฃผ์—ˆ๋‹ค.

    ๊ทธ๋ฆฌ๊ณ  7์ž๋ฆฌ, ํ˜น์€ 8์ž๋ฆฌ๊ฐ€ ๋งˆ์ง€๋ง‰์ด๋ผ๋Š” ๊ฒƒ์„ ๋‚˜ํƒ€๋‚ด๋ ค๊ณ  $๋ฅผ ์‚ฌ์šฉํ•ด ๋ฌธ์ž์—ด์˜ ๋์ž„์„ ํ‘œ๊ธฐํ–ˆ๋‹ค.

     

    ๋‹ค์Œ์€ ์„œ์šธ์ด๋‹ค.

     

    02-(N)XXX-XXXX

     

    seoul = re.compile(r'02[-][3-9]?\d{3}[-]\d{4}$') 

    '02-'๋Š” ๋ฌด์กฐ๊ฑด ๋‚˜์™€์•ผ ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ 02๋ฅผ ๊ทธ๋ƒฅ ๋„ฃ์–ด ์ฃผ์—ˆ๋‹ค. ๋’ท๋ถ€๋ถ„์€ ์‹œ๋‚ด์™€ ๊ฐ™๋‹ค.

     

    ๋‹ค์Œ์€ ๊ธฐํƒ€ ์ง€์—ญ์ด๋‹ค.

     

    0NX-(N)XXX-XXXX

     

    other = re.compile('0[3-9]\d[-][3-9]?\d{3}[-]\d{4}$')

    ์•ž์˜ 0NX๋„ ๋ฌด์กฐ๊ฑด ํ•œ ๋ฒˆ์”ฉ ๋‚˜์™€์•ผ ํ•˜๋ฏ€๋กœ 0 [3-9] \d๋กœ ๋‚˜์™€์•ผ ํ•จ์„ ์•Œ๋ ค์ฃผ์—ˆ๋‹ค.

     

     

    ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์…‹์„ ๋งŒ๋“ค์—ˆ๋‹ค.

    data = ["210-7979", '02-210-2929', '02 290-2100', '031-210-2929',
    '021-310-2929', '210-999', '2109-999', '030-3333-3333']

     

    ๊ทธ๋ฆฌ๊ณ  ํ•„ํ„ฐ์— ๊ฑธ๋ฆฐ๋‹ค๋ฉด REPLACEPHONE์œผ๋กœ ์น˜ํ™˜ํ•˜๊ณ , ์•„๋‹ˆ๋ฉด ๊ทธ๋ƒฅ ์ถœ๋ ฅ๋˜๋„๋ก ํ–ˆ๋‹ค.

    for i in data:
    if sinae.match(i) or seoul.match(i) or other.match(i):
    print("REPLACEPHONE")
    else:
    print(i)

     

     

    ์ „์ฒด ์ฝ”๋“œ๋‹ค.

    import re
    sinae = re.compile(r'[3-9]?\d{3}[-]\d{4}$')
    seoul = re.compile('02[-][3-9]?\d{3}[-]\d{4}$')
    other = re.compile('0[3-9]\d[-][3-9]?\d{3}[-]\d{4}$')
    data = ["210-7979", '02-210-2929', '02 290-2100', '031-210-2929',
    '021-310-2929', '210-999', '2109-999', '030-3333-3333']
    for i in data:
    if sinae.match(i) or seoul.match(i) or other.match(i):
    print("REPLACEPHONE")
    else:
    print(i)

    ์ž˜ ์ถœ๋ ฅ ๋œ๋‹ค.


    profile
    ํ•ด๋Š”์„ 

    ๊ธฐ๋ก์„ ๋‚จ๊ธฐ๋ ค๊ณ  ๋…ธ๋ ฅํ•ฉ๋‹ˆ๋‹ค

    ์ €์ž‘์žํ‘œ์‹œ (์ƒˆ์ฐฝ์—ด๋ฆผ)

    '๐Ÿ“šSTUDY > ๐ŸŽ‡๋‹คํ• (dafit.me)' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

    [DF905] 02. YYYY-MM-DD  (0) 2020.02.26
    [DF913] 10. ์ „ํ™”๋ฒˆํ˜ธ ์ „์ฒ˜๋ฆฌ  (0) 2020.02.25
    [DF913] 09. ๋ฌธ์ž์—ด ํ•„ํ„ฐ  (0) 2020.02.11
    [DF913] 08. ์•ŒํŒŒ๋ฒณ ๋””์ฝ”๋”ฉ  (0) 2020.02.11
    [DF913] 07. ๋ณ„์ฐ๊ธฐ ํ˜ผํ•ฉ  (0) 2020.02.11

    ๋Œ“๊ธ€

    ๊ด€๋ จ๊ธ€

    • [DF905] 02. YYYY-MM-DD 2020.02.26
    • [DF913] 10. ์ „ํ™”๋ฒˆํ˜ธ ์ „์ฒ˜๋ฆฌ 2020.02.25
    • [DF913] 09. ๋ฌธ์ž์—ด ํ•„ํ„ฐ 2020.02.11
    • [DF913] 08. ์•ŒํŒŒ๋ฒณ ๋””์ฝ”๋”ฉ 2020.02.11
    ๋งจ ์œ„๋กœ
์ „์ฒด ๊ธ€ ๋ณด๊ธฐ
Tistory ๋กœ๊ทธ์ธ
Tistory ๋กœ๊ทธ์•„์›ƒ
๋กœ๊ทธ์•„์›ƒ ๊ธ€์“ฐ๊ธฐ ๊ด€๋ฆฌ

Today

Total

์กฐ๊ธˆ์”ฉ ์ฒœ์ฒœํžˆ

Designed by Nana
๋ธ”๋กœ๊ทธ ์ด๋ฏธ์ง€
ํ•ด๋Š”์„ 
๊ธฐ๋ก์„ ๋‚จ๊ธฐ๋ ค๊ณ  ๋…ธ๋ ฅํ•ฉ๋‹ˆ๋‹ค

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.