[Java] 문자열 마지막 콤마 제거
June 10, 2024
문자열의 마지막 문자가 콤마(”,“)인 경우, 이 문자를 제거하는 방법에 대해서 알아보겠습니다.
1. String.substring()을 이용한 방법
String.substring(start, end)
는 문자열에서 Index start에서 (end - 1)까지 범위의 문자열을 잘라서 리턴합니다.
다음과 같이 마지막 콤마 문자를 제거할 수 있습니다.
input.endsWith(",")
: input 문자열의 마지막이","
문자로 끝나면 true 리턴input.substring(0, input.length() - 1)
: Index 0에서 Index (length -1) 이전 문자까지만 잘라서 리턴, 즉, 마지막 문자만 제거
public class Example {
public static void main(String[] args) {
String input = "apple,banana,orange,"; // 마지막 콤마가 있는 문자열
// 문자열 마지막이 "," 일 때, Index 0 ~ (length -1) 범위 문자열만 가져옴
if (input.endsWith(",")) {
input = input.substring(0, input.length() - 1);
}
System.out.println("Result: " + input);
}
}
Output:
Result: apple,banana,orange
2. StringBuilder.deleteCharAt()을 이용한 방법
deleteCharAt(index)
는 StringBuilder가 갖고 있는 문자열에서 index의 문자를 제거합니다.
builder.deleteCharAt(input.length() - 1)
: 문자열 마지막 Index(length - 1) 문자 제거
아래와 같이 마지막 문자열을 제거할 수 있습니다.
public class Example {
public static void main(String[] args) {
String input = "apple,banana,orange,"; // 마지막 콤마가 있는 문자열
// 문자열 마지막이 "," 일 때, 마지막 Index 문자 제거
if (input.endsWith(",")) {
StringBuilder builder = new StringBuilder(input);
builder.deleteCharAt(input.length() - 1);
input = builder.toString();
}
System.out.println("Result: " + input);
}
}
Output:
Result: apple,banana,orange
3. 정규표현식을 이용한 방법
정규표현식을 이용하여 문자열의 마지막 문자가 ","
인 경우를 찾을 수 있습니다. 그리고 replaceAll()
을 이용하여 이 부분을 ""
문자로 변경함으로써 제거할 수 있습니다.
compile(",$")
: ”,“로 끝나는 문자열 패턴pattern.matcher(input)
: input 문자열에서 패턴과 일치하는 문자열 찾음matcher.find()
: 패턴과 일치하는 문자열이 있으면 true 리턴matcher.replaceAll("")
: 패턴과 일치하는 문자열을 ""으로 변경
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
String input = "apple,banana,orange,"; // 마지막 콤마가 있는 문자열
// 정규표현식으로 마지막 문자가 ","인 경우를 찾고, 제거
Pattern pattern = Pattern.compile(",$");
Matcher matcher = pattern.matcher(input);
if (matcher.find()) {
input = matcher.replaceAll("");
}
System.out.println("Result: " + input);
}
}
Output:
Result: apple,banana,orange