Hãy xem xét các đoạn mã sau:Làm thế nào để tìm chính xác từ bằng cách sử dụng một regex trong Java?
String input = "Print this";
System.out.println(input.matches("\\bthis\\b"));
Output
false
Điều gì có thể có thể xảy ra với phương pháp này? Nếu nó sai, thì giải pháp đúng để tìm từ khớp chính xác là gì?
PS: Tôi đã tìm thấy nhiều câu hỏi tương tự ở đây nhưng không có câu hỏi nào trong số chúng cung cấp giải pháp mà tôi đang tìm kiếm. Đó là một vấn đề thẳng về phía trước mà tôi không thể tìm ra giải pháp đúng.
Xin cảm ơn trước.
'find()' trả về giá trị boolean cho biết kết quả khớp có thành công hay không. Bạn nên * không bao giờ * gọi 'find()' và bỏ qua kết quả. Ditto cho 'matches()' và 'lookingAt()'. Ngoài ra, các số nhóm được lập chỉ mục từ một số, không phải số không. Nhóm "đầu tiên", 'nhóm (0)', là một nhóm nhân tạo đại diện cho toàn bộ trận đấu. –