[Dart/Flutter] 문자열 마지막 문자 제거
September 17, 2023
문자열에서 마지막 문자만 제거하는 방법에 대해서 알아보겠습니다.
1. substring()으로 마지막 문자 제거
string.substring(start, end)
는 문자열의 start Index에서 end Index 이전까지 잘라서 리턴합니다. 즉, start는 포함하고 end는 포함하지 않는 문자열을 리턴합니다.
따라서, 아래와 같이 Index 0에서 마지막 문자의 Index 이전까지 자르도록 하여 마지막 문자만 제거할 수 있습니다.
void main() {
String string = "안녕하세요!";
String newString = string.substring(0, string.length - 1);
print(newString);
}
Output:
안녕하세요
2. split()으로 마지막 문자 제거
string.split('')
는 문자열을 문자 1개 단위로 분리하고 각각의 문자가 저장된 리스트를 리턴합니다.
리턴된 리스트에서 removeLast()
함수로 마지막 요소를 삭제하고 다시 join()
으로 리스트의 모든 값들을 합치면 마지막 문자만 제거된 문자열이 리턴됩니다.
void main() {
String originalString = "안녕하세요!";
List<String> parts = originalString.split('');
parts.removeLast();
String modifiedString = parts.join();
print(modifiedString);
}
Output:
안녕하세요
3. 정규표현식으로 마지막 문자 제거
string.replaceAll(pattern, repl)
은 string에서 pattern과 일치하는 문자열을 모두 찾고 repl로 변환합니다.
아래 예제는 마지막 문자 패턴을 찾아서 ''
으로 변환하여 제거합니다.
- 패턴
$
는 문자열의 끝을 의미하며,.
는 문자 1개를 의미 - 패턴
.$
는 마지막 문자 1개를 의미
void main() {
String originalString = "안녕하세요!";
String modifiedString = originalString.replaceAll(RegExp(r'.$'), '');
print(modifiedString);
}
Output:
안녕하세요