Trong lập trình JavaScript, xử lý chuỗi là một phần quan trọng, và việc tìm kiếm thông tin trong chuỗi là một nhiệm vụ thường xuyên. Trong bài viết này, chúng ta sẽ cùng nhau tìm hiểu về các phương thức tìm kiếm chuỗi quan trọng, đồng thời đảm bảo rằng chúng ta sẽ viết mã theo chuẩn SEO để tối ưu hóa trải nghiệm tìm kiếm trên web.
Phương Thức indexOf()
Phương thức indexOf() trả về vị trí xuất hiện đầu tiên của một chuỗi trong chuỗi khác. Điều này giúp bạn xác định vị trí của một từ hoặc một phần của chuỗi.
let text = "Please locate where 'locate' occurs!";
let index = text.indexOf("locate");
Chú ý rằng vị trí bắt đầu từ 0, và nếu không tìm thấy chuỗi, phương thức trả về -1.
Phương Thức lastIndexOf()
Ngược lại với indexOf(), phương thức lastIndexOf() trả về vị trí xuất hiện cuối cùng của một chuỗi trong chuỗi khác.
let text = "Please locate where 'locate' occurs!";
let index = text.lastIndexOf("locate");
Cả indexOf() và lastIndexOf() sẽ trả về -1 nếu chuỗi không được tìm thấy.
Phương Thức search()
Phương thức search() thực hiện một tìm kiếm chuỗi hoặc biểu thức chính quy trong chuỗi và trả về vị trí của kết quả đầu tiên.
let text = "Please locate where 'locate' occurs!";
text.search("locate");
text.search(/locate/);
Lưu ý rằng search() không hỗ trợ đặt vị trí bắt đầu tìm kiếm.
Phương Thức match()
Phương thức match() trả về một mảng chứa kết quả của việc khớp một chuỗi với một chuỗi (hoặc biểu thức chính quy).
let text = "The rain in SPAIN stays mainly in the plain";
text.match("ain");
text.match(/ain/);
text.match(/ain/g);
text.match(/ain/gi);
Nếu biểu thức chính quy không có cờ g (tìm kiếm toàn cục), match() chỉ trả về kết quả của lần khớp đầu tiên.
Phương Thức matchAll()
Phương thức matchAll() trả về một vòng lặp chứa kết quả của việc khớp một chuỗi với một chuỗi (hoặc biểu thức chính quy). Đây là một tính năng mới từ ES2020.
const iterator = text.matchAll("Cats");
const iterator = text.matchAll(/Cats/g);
const iterator = text.matchAll(/Cats/gi);
Phương Thức includes()
Phương thức includes() trả về true nếu một chuỗi chứa một giá trị cụ thể, ngược lại trả về false.
let text = "Hello world, welcome to the universe.";
text.includes("world");
text.includes("world", 12);
Lưu ý rằng includes() phân biệt chữ hoa và chữ thường.
Phương Thức startsWith()
Phương thức startsWith() trả về true nếu một chuỗi bắt đầu bằng một giá trị cụ thể.
let text = "Hello world, welcome to the universe.";
text.startsWith("Hello");
text.startsWith("world", 5);
Phương Thức endsWith()
Phương thức endsWith() trả về true nếu một chuỗi kết thúc bằng một giá trị cụ thể.
let text = "John Doe";
text.endsWith("Doe");
text.endsWith("world", 11);
Chú ý rằng cả startsWith() và endsWith() đều phân biệt chữ hoa và chữ thường.
Tổng Kết
Trong bài viết này, chúng ta đã khám phá các phương thức quan trọng để tìm kiếm thông tin trong chuỗi JavaScript. Điều này sẽ giúp bạn hiểu rõ cách thao tác chuỗi một cách hiệu quả và tối ưu. Hãy tiếp tục khám phá những khái niệm mới và áp dụng chúng vào các dự án của bạn!