Algorithms
<프로그래머스 알고리즘문제> 문자열 다루기 기본
seoca
2019. 1. 21. 14:07
문제 설명
문자열 s의 길이가 4혹은 6이고, 숫자로만 구성되있는지 확인해주는 함수, solution을 완성하세요.
예를들어 s가
a234
이면 False를 리턴하고
1234
라면 True를 리턴하면 됩니다.
제한 사항
s
는 길이 1 이상, 길이 8 이하인 문자열입니다.
입출력 예
s | return |
---|---|
a234 |
false |
1234 |
true |
Solution in Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
class Solution {
public boolean solution(String s) {
boolean answer = true;
if(s.length() == 4 || s.length() == 6){
if( s.matches("^[0-9]*$")){
return answer;
}else{
return answer = false;
}
}else{
return answer = false;
}
}
}
|
cs |
Regular expression 공부하기
^[0-9]*$
^ - 문자열의 시작
[0-9] - []는 문자의 범위를 나타내며 여기선 숫자가(0부터 9까지) 올 수 있음을 의미
* - 앞의 문자가 없을 수도 있고 무한정으로 많을 수도 있다.
$ - 문자열의 종료
Solution in Javascript
function solution(s) {
if(s.length === 4 || s.length === 6){
// split으로 array 로 나누고 every로 돌려서 isNaN이면 true return.
return s.split("").every(e => !isNaN(e));
} else {
return false;
}
}
console.log(solution('12s4')); //false
reference
https://programmers.co.kr