Tôi muốn loại bỏ dấu phẩy ở cuối nếu chuỗi kết thúc với dấu phẩylàm thế nào để loại bỏ dấu phẩy nếu chuỗi có dấu phẩy ở cuối
Ví dụ
tên String = "A, B, C,"
tôi cần phải loại bỏ dấu phẩy cuối cùng nếu chuỗi kết thúc với ""
Tôi muốn loại bỏ dấu phẩy ở cuối nếu chuỗi kết thúc với dấu phẩylàm thế nào để loại bỏ dấu phẩy nếu chuỗi có dấu phẩy ở cuối
Ví dụ
tên String = "A, B, C,"
tôi cần phải loại bỏ dấu phẩy cuối cùng nếu chuỗi kết thúc với ""
Bạn có thể thử một biểu thức chính quy:
names = names.replaceAll(",$", "");
Hoặc một chuỗi đơn giản:
if (names.endsWith(",")) {
names = names.substring(0, names.length() - 1);
}
if (names.endsWith(",")) {
names = names.substring(0, names.length()-1);
}
int last = names.length() - 1;
if (last > 0 && names.charAt(last) == ',') {
names = names.substring(0, last);
}
System.out.println(names.replaceAll(",([^,]*)$", "$1"));
Nếu bạn không muốn phát minh lại bánh xe:
StringUtils.stripEnd(names, ",");
Điều này sẽ không hoạt động nếu bạn chỉ muốn 1 dấu phẩy và có nhiều dấu phẩy hơn, ví dụ: 's, th ,,' – pstobiecki
Bạn có thể làm điều gì đó như thế này bằng cách sử dụng 'Java 8'
private static void appendNamesWithComma() {
List<String> namesList = Arrays.asList("test1", "tester2", "testers3", "t4");
System.out.println(namesList.stream()
.collect(Collectors.joining(", ")));
}
Bạn có thể giải thích cách hoạt động của tính năng regEx ở đây không? –
Sử dụng $ trong biểu thức chính quy không loại bỏ dấu phẩy nhưng chỉ hoạt động bằng cách sử dụng "," –
@amit Tumkur $ cho biết kết thúc chuỗi để chỉ xóa dấu phẩy ở cuối. – teksan