Java - 유효한 팰린드롬 (정규식)
728x90
import java.util.Scanner;
public class EffectivePalindrome {
public static String solution(String s) {
String answer = "NO";
s = s.toUpperCase().replaceAll("[^A-Z]", "");
String temp = new StringBuilder(s).reverse().toString();
if (s.equals(temp)) {
answer = "YES";
}
return answer;
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String s = in.nextLine();
System.out.println(solution(s));
}
}
- 먼저 Scanner 의 nextLine을 사용해 한문장 전체를 s 라는 변수에 입력 받습니다.
- answer 라는 변수를 선언
- s 라는 문자열 변수를 모두 대문자로 치환 후 정규식으로 사용하여 알파벳 A ~ Z 가 아닌것은 모두 ""로 replace 합니다.
- temp 라는 변수명에 reverse 된 문자열을 임시로 저장
- s 문자열과 temp 를 비교
- 문자열 끼리 비교할때는 java에서는 equals를 사용해야합니다.
- answer를 리턴
728x90
'Java > java - algorithm' 카테고리의 다른 글
java - 최대 매출(슬라이딩 윈도우) (0) | 2021.07.29 |
---|---|
java - 두배열 합치기(Two pointer) (0) | 2021.07.27 |
java - 임시반장 정하기(배열) (0) | 2021.07.26 |
java - 격자판 최대합 (배열) (0) | 2021.07.25 |
java - 숫자만 추출(아스키 코드) (0) | 2021.07.18 |
댓글
이 글 공유하기
다른 글
-
java - 두배열 합치기(Two pointer)
java - 두배열 합치기(Two pointer)
2021.07.27 -
java - 임시반장 정하기(배열)
java - 임시반장 정하기(배열)
2021.07.26 -
java - 격자판 최대합 (배열)
java - 격자판 최대합 (배열)
2021.07.25 -
java - 숫자만 추출(아스키 코드)
java - 숫자만 추출(아스키 코드)
2021.07.18