Bạn nên luôn luôn nhìn cho câu trả lời cho loại câu hỏi trong Apache Commons ... và những cái cơ bản nên được bao gồm trong mỗi xây dựng. Cách thích hợp nhất (không sử dụng regex) là:
StringUtils.substringAfterLast(String str, String separator)
Nhưng nếu bạn thực sự muốn sử dụng regex vì lý do nào đó, có một số phương pháp bạn có thể muốn sử dụng, ví dụ:
String removeAll(String text, String regex)
hoặc
String removeFirst(String text, String regex)
amusingly, bạn có thể có được những gì bạn muốn bằng cách làm điều này (dựa vào quantifiers tham lam):
StringUtils.removeFirst(myString, ".*,");
StringUtils là một phần của apache commons-lang3.
Ngoài bất cứ điều gì khác, không có điểm phát minh lại bánh xe. Nhưng tôi có thể nghĩ đến ít nhất 2 lợi thế khác:
- Người Apache cũng có thể được tính để dự đoán nhiều nhất là "gotchas" trong những năm qua. Điều này khiến bạn tiếp tục với, um, nội dung thú vị.
- các phương pháp Apache này thường được đặt tên tốt: bạn không phải làm lộn xộn mã của bạn bằng các phương thức tiện ích cứng nhắc; thay vào đó bạn có một phương pháp sạch đẹp mà làm những gì nó nói trên thiếc ...
PS không có gì để ngăn cản bạn nhìn vào mã nguồn để kiểm tra về những gì phương pháp này thực sự làm là. Thông thường chúng rất dễ hiểu.
Nguồn
2016-12-04 19:21:45
Đúng, nhưng không sử dụng regex. –
Đã thêm ví dụ biểu thức chính quy! – dacwe
@dacwe: giống như chỉ mục cuối cùng, cách lấy chỉ mục đầu tiên ?? – Deepzz