Chia tách chuỗi là nhiệm vụ rất thường gặp trong lập trình web. Trong hướng dẫn này, bạn sẽ học cách sử dụng phương thức split() trong JavaScript để chia một chuỗi thành một mảng các chuỗi con.
1. Cú pháp phương thức split()
Phương thức split() của String chia một chuỗi thành một mảng các chuỗi con:
split([separator], [limit]);
split() chấp nhận hai tham số tùy chọn, trong đó:
Tham số separator
Tham số separator
là dấu phân tách, xác định vị trí mỗi lần phân tách sẽ xảy ra trong chuỗi ban đầu.
Dấu phân tách này có thể là một chuỗi. Hoặc nó có thể là một biểu thức chính quy (regular expression).
Nếu bạn bỏ quên dấu phân tách, thì split() không thể tìm thấy dấu phân tách trong chuỗi. Thế nên, trong trường hợp này, split() sẽ trả về toàn bộ chuỗi.
Tham số limit
Tham số limit
là giới hạn. Nó chỉ định số chuỗi con được phân tách. Phương thức split() sẽ dừng khi số lượng chuỗi con đạt đến giới hạn.
Nếu limit = 0
, hàm split() trả về một mảng trống. Nếu limit = 1
, hàm split() trả về một mảng có chứa chuỗi.
> Lưu ý rằng mảng kết quả có thể có ít items hơn limit
trong trường hợp split() chia tách đến cuối chuỗi mà vẫn chưa đạt đến limit.
2. Ví dụ sử dụng split() trong Javascript
Hãy cùng làm thử một vài ví dụ để hiểu cách sử dụng split() trong Javascript
VD1: Sử dụng split() tách chuỗi thông thường thành các từ riêng biệt
Ví dụ sau sử dụng phương thức split() để chia một chuỗi thành các từ:
let str = "Học JavaScript hay Web?";
// Sử dụng split() để tách chuỗi -> từ
let substrings = str.split(" ");
console.log(substrings);
Kết quả ta được:
["Học", "JavaScript", "hay", "Web"]
Ở đây, chúng ta đã sử dụng dấu phân tách là một space, " "
VD2: Sử dụng split() tách chuỗi và nhận về giới hạn kết quả
Ví dụ sau sử dụng phương thức split() để chia một chuỗi thành các chuỗi con bằng cách sử dụng dấu cách. Nó cũng sử dụng tham số thứ hai để giới hạn số lượng chuỗi con trả về:
let str = "Học JavaScript hay Web?";
// Sử dụng split()
let substrings = str.split(" ", 2);
console.log(substrings);
Kết quả ta được:
["Học", "JavaScript"]
VD3: Sử dụng split() tách chuỗi với biểu thức chính quy
Ở hai ví dụ trên, dấu phân tách chúng ta sử dụng là dấu cách. Tuy nhiên, với các chuỗi phức tạp, việc sử dụng dấu cách là khó giải quyết được vấn đề.
Do đó, phương thức split() cho phép bạn truyền biểu thức chính quy để xác định dấu phân tách.
let paragraph = "Học. JavaScript! hay? Web."
// Tách chuỗi sử dụng biểu thức chính quy
let sentences = paragraph.split(/[!,?,.]/);
console.log(sentences);
Kết quả ta được:
["Học", " JavaScript", " hay", " Web", ""]
Nếu biểu thức chính quy nằm trong dấu ngoặc () thì phương thức split() cũng trả về chúng trong kết quả (nếu có)
let paragraph = "Học. JavaScript! hay? Web."
// Sử dụng () trong biểu thức chính quy
let sentences = paragraph.split(/([!,?,.])/);
console.log(sentences);
Kết quả ta được:
["Học", ".", " JavaScript", "!", " hay", "?", "Web", ".", ""]
Chú ý kết quả, dấu .
!
và ?
cũng được trả về trong kết quả.
Vì split() cho phép bạn truyền vào biểu thức chính quy làm dấu phân tách, thế nên bạn có thể tùy biến dấu phân tách để có được kết quả cuối cùng bạn muốn.
Tổng kết split() trong JavaScript
Như vậy, qua bài học này bạn đã biết cách sử dụng phương thức split() trong JavaScript để phân tác chuỗi, biết sử dụng tham số limit và tùy biến kết quả với biểu thức chính quy.
Hi vọng bạn cảm thấy hữu ích cho quá trình học lập trình JavaScript / lập trình web của bạn.
> Nếu muốn học lập trình JavaScript chuyên sâu, nhanh hơn, thực tế hơn thì đừng bỏ qua KHÓA HỌC FRONT END (với REACTJS) này bạn nhé.
---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Học Lập trình chất lượng cao (Since 2002). Học thực tế + Tuyển dụng ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0968051561
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
#niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp #java #php #python