[Java] Cắt String Trong Java - Split String In Java.

Skip to content
  • Trang chủ
  • Giới thiệu
  • Liên hệ
  • Chính sách
  • Điều khoản
Simple Code C Java Java String [Java] Cắt String trong Java - Split String in Java.

Wednesday, December 30, 2015

Phương thức split() được sử dụng để cắt một String thành các String nhỏ dựa trên ký tự phân chia. Phương thức này có 2 biến thể. *String[] split(String kytuphanchia): Kết quả trả về là một mảng string sau khi cắt input String đầu vào theo 'kytuphanchia'. *String[] split(String kytuphanchia, int gioihan): Kết quả trả về là một mảng String có kích thước bằng gioihan. Ví dụ: split('kytuphanchia',3) sẽ trả về một mảng String có kích thước là 3 mặc dù String input đầu vào sau khi split theo 'kytuphanchia' có thể có kích thước lớn hơn 3. Khi gioihan là một số âm mảng array String trả về sẽ chứa tất cả các String có thể cắt được từ input String đầu vào. Khi goihan là 0 thì mảng array String trả về sẽ chứa không chứa ký tự string rỗng ở cuối. Nghe có vẻ khó hiểu nhưng bài viết sẽ phân tích về gioihan là số âm, gioihan bằng 0 ở ví dụ phía dưới. Chương trình cài đặt: package simplecodecjava.blogspot.com; public class SplitExample { public static void main(String args[]) { String str = new String("28/12/2015/ /simplecodecjava.blogspot.com"); System.out.println("split(String kytuphanchia):"); String array1[] = str.split("/"); for (String temp : array1) { System.out.println(temp); } System.out.println("split(String kytuphanchia, int gioihan) với gioihan=2:"); String array2[] = str.split("/", 2); for (String temp : array2) { System.out.println(temp); } System.out.println("split(String kytuphanchia, int gioihan) với gioihan=0:"); String array3[] = str.split("/", 0); for (String temp : array3) { System.out.println(temp); } System.out.println("split(String kytuphanchia, int gioihan) với gioihan=-5:"); String array4[] = str.split("/", -5); for (String temp : array4) { System.out.println(temp); } } } Output: split(String kytuphanchia): 28 12 2015 simplecodecjava.blogspot.com split(String kytuphanchia, int gioihan) với gioihan=2: 28 12/2015/ /simplecodecjava.blogspot.com split(String kytuphanchia, int gioihan) với gioihan=0: 28 12 2015 simplecodecjava.blogspot.com split(String kytuphanchia, int gioihan) với gioihan=-5: 28 12 2015 simplecodecjava.blogspot.com Kết quả của chương trình trên. * Với trường hợp gioihan = 2 thì mảng String đầu ra có kích thước là 2. Do đó mà kết quả in ra {'28','12/2015/ /simplecodecjava.blogspot.com'} * Với trường hợp gioihan = -5 và gioihan=0 cho cùng một kết quả {'28','12','2015','','simplecodecjava.blogspot.com'} * Nếu thay input String đầu vào: String str = new String("28/12/2015/ /simplecodecjava.blogspot.com//"); Ta sẽ thấy kết quả chương trình có sự khác biệt giữa gioihan=-5 và gioihan=0: split(String kytuphanchia): 28 12 2015 simplecodecjava.blogspot.com split(String kytuphanchia, int gioihan) với gioihan=2: 28 12/2015/ /simplecodecjava.blogspot.com// split(String kytuphanchia, int gioihan) với gioihan=0: 28 12 2015 simplecodecjava.blogspot.com split(String kytuphanchia, int gioihan) với gioihan=-5: 28 12 2015 simplecodecjava.blogspot.com * gioihan = -5: input string đầu vào đã được cắt ra thành {'28','12','2015',' ','simplecodecjava.blogspot.com',' ',' '}. * gioihan = 0: input string đầu vào đã được cắt ra thành {'28','12','2015',' ','simplecodecjava.blogspot.com'}. Mảng string thu được sau khi cắt với gioihan = -5 so với gioihan = 0 nhiều hơn 2 string rỗng bởi 2 ký tự cuối {//} trong chuỗi input String đầu vào cũng bị cắt ra và tạo thành 2 String rỗng. Chú ý: *Khi kytuphanchia là những ký tự đặc biệt. thì cần phải thêm '\\' vào đằng trước. Phân chia theo dấu '.' được viết thành: string.split('\\.'); Phân chia theo dấu '^' được viết thành: string.split('\\^'); Phân chia theo khoảng trắng ' ' được viết thành: string.split('\\s'); Phân chia theo dấu '|' được viết thành: string.split('\\|'); * Khi muốn cắt String theo chữ số dùng '\\d+' String str = new String("abc123def456ghj"); System.out.println("split(String kytuphanchia):"); String array1[] = str.split("\\d+"); for (String temp : array1) { System.out.println(temp); } Output: split(String kytuphanchia): abc def ghj * Khi muốn cắt String theo chữ cái dùng '[a-zA-Z]+' String str = new String("0abc123def456ghj"); System.out.println("split(String kytuphanchia):"); String array1[] = str.split("[a-zA-Z]+"); for (String temp : array1) { System.out.println(temp); } Output: split(String kytuphanchia): 0 123 456 Cám ơn bạn đã đọc bài viết này. Hãy chia sẻ bài viết và bình luận ý kiến của bạn ở bên dưới.

Share this

Admin blog

Chào mừng bạn đến với SimpleCodeCJava Blog - Mục đích của chúng tôi khi thành lập blog này là muốn chia sẻ những kiến thức và kinh nghiệm lập trình mà chúng tôi đã học được với mong muốn giúp đỡ mọi người, giúp bạn rút ngắn được thời gian tìm hiểu cũng như việc giải quyết những vấn đề trong lập trình C và Java.

← Newer Post Older Post → Home

0 Comment to "[Java] Cắt String trong Java - Split String in Java."

Subscribe to: Post Comments (Atom)

Recent

Weekly

  • [Bài toán] Liệt kê tập con của tập n phần tử. Bài toán: Cho X = {1, 2,3,.., n}. Hãy liệt kê tất cả các tập con k phần tử của X (k<=n). Giải: Mỗi tập con của tập hợp X có thể biểu ...
  • [Thuật toán] Tìm kiếm theo chiều sâu DFS. [Thuật toán] Tìm kiếm theo chiều sâu DFS. Để xem lý thuyết đồ thị với các định nghĩa về đường đi, chu trình, đồ thị liên thông bạn có thể xem ở  đây . Lý thuyết thuật toán tìm kiế...
  • [Thuật toán] Tìm đường đi giữa hai đỉnh của đồ thị. [Thuật toán] Tìm đường đi giữa hai đỉnh của đồ thị. Bài toán: Cho đồ thị G=(V, E) . Trong đó V là tập đỉnh, E là tập cạnh của đồ thị. Hãy tìm đường đi từ đỉnh s ∈ V tới đỉnh t ∈ V . Thủ tục...
  • [Thuật toán] Tìm đường đi và chu trình Hamilton. [Thuật toán] Tìm đường đi và chu trình Hamilton. Để xem lý thuyết đồ thị với các định nghĩa về đường đi, chu trình, đồ thị liên thông bạn có thể xem ở  đây . Với đồ thị Euler , chúng ta ...
  • [Bài tập mẫu] Hàm trong C/C++ CÂU HỎI 1. Dòng đầu tiên của định nghĩa hàm gọi là gì, nó bao gồm các thông tin thế nào? 2. Hàm có thể trả về bao nhiêu gi...
  • [Thuật toán] Tìm đường đi và Chu trình Euler [Thuật toán] Tìm đường đi và Chu trình Euler Để xem lý thuyết đồ thị với các định nghĩa về đường đi, chu trình, đồ thị liên thông bạn có thể xem ở  đây . Định nghĩa : Chu trình đơn t...
  • [Bài toán] Liệt kê các xâu nhị phân độ dài n bằng thuật toán Back Track [Bài toán] Liệt kê các xâu nhị phân độ dài n bằng thuật toán Back Track Lý thuyết Back Track bạn có thể xem thêm ở đây.      Biểu diễn các xâu nhị phân dưới dạng b1, b2,..., bn, trong đó bi∈{0, 1 }. Thủ tục đệ...
  • [Thuật toán] Liệt kê hoán vị tiếp theo theo thứ tự từ điển. Bài toán : Liệt kê các hoán vị của tập n phần tử. Cho X = { 1, 2,.., n } . Hãy liệt kê các hoán vị từ n phần tử của X. Thuật toán: Mỗi...
  • [Java] Sắp xếp ArrayList trong Java 1. Sắp xếp mảng String ArrayList Để sắp  xếp ArrayList có kiểu dữ liệu là String, ta dùng method Collections.sort(arraylist), dữ liệu đượ...
  • [Bài tập mẫu] Chuỗi ký tự trong C/C++. I. Câu hỏi. 1. Phạm vi giá trị của các ký tự trong bảng mã ASCII? 2. Định nghĩa chuỗi? 3. Tại sao để lưu trữ một chuỗi gồm n ký tự ta ...

Comment

Follow us on Facebook

Từ khóa » Câu Lệnh Split Trong Java