문자열 다루기 기본
문제 설명
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한 사항
- s는 길이 1 이상, 길이 8 이하인 문자열입니다.
입출력 예
s return
"a234" false
"1234" true
나의 풀이(JAVA)
class Solution {
public boolean solution(String s) {
boolean answer = true;
String num = "0123456789";
String[] arr = s.split("");
if (s.length() == 4 || s.length() == 6) {
for (int i=0; i<arr.length; i++) {
if (num.indexOf(arr[i]) == -1) {
answer = false;
break;
}
}
} else {
answer = false;
}
return answer;
}
}
다른 사람의 풀이(JAVA)
풀이1
class Solution {
public boolean solution(String s) {
if (s.length() == 4 || s.length() == 6) {
try {
int x = Integer.parseInt(s);
return true;
} catch (NumberFormatException e) {
return false;
}
} else {
return false;
}
}
}
풀이2
class Solution {
public boolean solution(String s) {
if (s.length() == 4 || s.length() == 6) {
return s.matches("(^[0-9]*$)");
} else {
return false;
}
}
}
풀이3
class Solution {
public boolean solution(String s) {
return (s.length() != 4 && s.length() != 6) || (s.split("[0-9]").length > 0) ? false : true;
}
}
나의 풀이(JavaScript)
function solution(s) {
let answer = true;
const num = "0123456789";
const arr = s.split("");
if (s.length === 4 || s.length === 6) {
for (let i=0; i<arr.length; i++) {
if (num.indexOf(arr[i]) === -1) {
answer = false;
break;
}
}
} else {
answer = false;
}
return answer;
}
다른 사람의 풀이(JavaScript)
풀이1
function solution(s) {
const regex = /^\d{$|^\d{4}$/;
return regex.test(s);
}
풀이2
function solution(s) {
let answer = false;
if ((s.length == 4 || s.length == 6) && /^[0-9]+$/.test(s)) {
answer = true;
}
return answer;
}
Author And Source
이 문제에 관하여(문자열 다루기 기본), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ehcho/문자열-다루기-기본저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)