https://programmers.co.kr/learn/courses/30/lessons/72410
코딩테스트 연습 - 신규 아이디 추천
카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로
programmers.co.kr
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
class Solution {
public static String solution(String new_id) {
String answer = "";
answer=answer = new_id.toLowerCase();
answer=answer.replaceAll("[^-_.a-z0-9]", ""); // ^가 선행하면 not
answer=answer.replaceAll("[.]{2,}", ".");
answer=answer.replaceAll("^[.]|[.]$", ""); // ^[.].으로 시작하는지
if (answer.equals("")) {
answer+="a";
}
if (answer.length() >= 16) {
answer = answer.substring(0, 15);
}
answer = answer.replaceAll("[.]$", "");
if (answer.length() <= 2) {
while (answer.length() != 3) {
answer += answer.charAt(answer.length() - 1);
}
}
return answer;
}
}
|
cs |
정규표현식이라는 방법으로 풀 수 있었다. 나는 조건문을 가지고 풀었는데 이러면 메모리 초과가 난다.그리고 문자열을 합칠때 concat을 사용해줬는데 런타임에러가 떠서 연산자로 바꿨다. 왜 에러가 뜨는진 나도 모르겠다..ㅜㅜ 더 찾아봐야 할듯
아무튼 정규표현식은 은 유효성 검사 코드 작성 시 정말 효율적인 방법이라는 생각이 들었다. 관련 자료를 더 찾아봤다..!
https://codechacha.com/ko/java-regex/
Java - 정규표현식(regex), 다양한 예제로 쉽게 이해하기
정규표현식(Regular expressions), Regex는 문자열에서 어떤 패턴을 찾는데 도움을 줍니다. Regex의 Metacharacters, Quantifiers, Grouping에 대해서 정리하였고 다양한 예제로 설명합니다. Regex는 대부분 알고 있지
codechacha.com
https://coding-factory.tistory.com/529
[Java] 자바 정규 표현식 (Pattern, Matcher) 사용법 & 예제
정규표현식(Regular Expression)이란 컴퓨터 과학의 정규언어로부터 유래한 것으로 특정한 규칙을 가진 문자열의 집합을 표현하기 위해 쓰이는 형식언어 입니다. 개발을 하다보면 전화번호, 주민등
coding-factory.tistory.com
댓글