greenhelix
greenhelix
greenhelix
11-02 18:29
  • All (229)
    • Algorithm (118)
      • Algorithm (17)
      • Graph (0)
      • Core (6)
      • Python (18)
      • PythonSnippet (4)
      • Java (59)
      • Kotlin (14)
    • Project (0)
    • Study (8)
      • License (5)
      • EIP (3)
    • Programming (63)
      • Android (41)
      • Flutter (1)
      • Bugs Life (21)
      • Linux (0)
    • Tech (32)
      • Tech (17)
      • Drone (4)
      • Hacking (11)
    • Life (6)
      • INGRESS (1)
      • 심시티빌드잇 (0)
250x250

티스토리

hELLO · Designed By 정상우.
greenhelix

greenhelix

#44_Code Signal Arcade >> Find Email Domain
Algorithm/Java

#44_Code Signal Arcade >> Find Email Domain

2020. 3. 19. 22:45

Code Signal -Arcade

코드시그널
아케이드 문제 관련 풀이들을 구글링하면서 찾아가는 일지를 하나씩하나씩 기록하고자 합니당. 

주로 자바 위주로 풀이를 올릴예정이고, 추가로 공부하고 있는 파이썬이나 코틀린, GO, 자바스크립트 더 나아가 스위프트까지...

되는대로 가능한대로 구글링하고 정답맞추면 바로 패스!!
이런식으로 좋은 코드이든 말든 짜집기한 결과물들을 개인적 소장을 위해 기록합니다. ^^
참고 사이트들은 아래에 링크로 남겨둘터이니 자세하고 더욱 깊은 내용들은 링크로 들어가보세요! \


Find Email Domain

이메일 주소(도메인)를 찾아라.

 

입력되는 문자열들이 이메일 주소 부분을 가져오는 알고리즘입니다. 

이메일 주소 @ 뒷부분을 추출해달라는 문제인데요. 

패턴/ 컴파일 / 정규식을 통해서 구할 수 있습니다. 

 

답안

 

String findEmailDomain(String address) {
    Pattern pattern = Pattern.compile("^([\\w\\D]+)@([a-z].+[a-z])$");
    Matcher mat = pattern.matcher(address);
    String domains = "";
    if(mat.find()) domains = mat.group(2);
    return domains;
}

^([\\w\\D]+)@([a-z].+[a-z])$

정규식 부분입니다. 앞에 그룹으로, w D 조건을 걸어줍니다. 

여기서는 그룹을 잘 사용하면 편합니다. 

 

 

//  GROUP() method 사용하는 방법. 

// () 를 통해 그룹핑을 할 수 있다.

// 여기서 ()를 기준으로 내가 원하는 값을 출력해낼 수 있다. 

// 괄호의 순서대로 1-2 ,..순이며, 

// find()를 반드시 진행해주고, 원하는 Group 을 ()안에 번호를 넣어서 빼낼수 있다. 

frind() 메서드를 통해서 내가 원하는 특정 부분의 그룹을 가져오면 됩니다. 

 

 


이제 엘리트 분들의 답안을 감상하자... 

JAVA

String findEmailDomain(String address) {

    int ind = address.lastIndexOf("@");
    
    return address.substring(ind+1);
}

정규식이 필요없이, @라는 특정문자를 찾아내서 그 이후의 문자열을 substring()을 통해서 리턴하는것도 또 방법이네요.

 

Python3

def findEmailDomain(address):
    return address.split('@')[-1]

 

 

JS

function findEmailDomain(address) {
    return address.split('@').pop()
}

 

 

공감♥ 버튼 눌러주시면 더욱 많은 포스팅을 올리는데 힘이 됩니다!

부탁드려요 돈드는거 아니잖아요~

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Algorithm > Java' 카테고리의 다른 글

#45_Code Signal Arcade >> Build Palindrome  (0) 2020.04.08
#43_Code Signal Arcade >> Is Beautiful String  (0) 2020.03.10
#42_Code Signal Arcade >> Bishop And Pawn  (0) 2020.03.09
    'Algorithm/Java' 카테고리의 다른 글
    • #46_Code Signal Arcade >> Elections Winners
    • #45_Code Signal Arcade >> Build Palindrome
    • #43_Code Signal Arcade >> Is Beautiful String
    • #42_Code Signal Arcade >> Bishop And Pawn
    greenhelix
    greenhelix
    개발에 관한 것들과 개인적인 것을 담는 블로그

    티스토리툴바