Mình đã giới thiệu với các bạn về DataWeave để transform dữ liệu từ định dạng này sang các định dạng khác nhau trong ứng dụng Mule. Để làm được điều này, ngoài việc hiểu các syntax cần sử dụng trong DataWeave, chúng ta cần biết thêm các thao tác mà DataWeave hỗ trợ để việc transform dữ liệu của chúng ta dễ dàng hơn. Để bắt đầu, trong bài viết này, mình sẽ liệt kê những thao tác cơ bản để thao tác với String mà DataWeave 1.0 hỗ trợ các bạn nhé!
Table of Contents
Cắt chuỗi
Để cắt chuỗi trong DataWeave, chúng ta cần khai báo khoảng giá trị mà chúng ta cần cắt sử dụng dấu ngoặc vuông, bên trong là index của ký tự mà chúng ta sẽ cắt.
Ví dụ mình có payload là “Huong Dan Java” thì
1 |
payload[0..2] |
sẽ return giá trị “Huo” như sau:
Đảo ngược chuỗi
Để đảo ngược chuỗi thì chúng ta chỉ cần khai báo khoảng giá trị từ -1 đến 0:
1 |
payload[-1..0] |
như sau:
Phương thức replace
Để thay thế một chuỗi bất kỳ trong DataWeave thì các bạn có thể sử dụng keyword replace và with đơn giản như sau:
1 |
payload replace "Java" with "Khanh" |
Kết quả:
Phương thức sizeOf
Phương thức sizeOf này hỗ trợ cho nhiều kiểu dữ liệu, tuỳ theo kiểu dữ liệu của tham số mà giá trị trả về sẽ khác nhau. Đối với String thì nó sẽ return lại chiều dài của chuỗi. Các bạn khai báo nó như sau:
1 |
sizeOf payload |
Kết quả:
Nối chuỗi
Trong DataWeave, để nối 2 hay nhiều chuỗi bất kỳ, chúng ta sẽ sử dụng ký tự “++”, ví dụ như:
1 |
payload ++ " Khanh Nguyen" |
Kết quả:
Phương thức trim
Giống như trong Java, phương thức trim dùng để remove khoảng trắng ở 2 đầu của một chuỗi bất kỳ. Trong DataWeave, chúng ta khai báo phương thức này như sau:
1 |
trim payload |
Kết quả:
Phương thức capitalize
DataWeave cho phép chúng ta có thể in hoa ký tự đầu tiên của một từ bất kỳ sử dụng phương thức capitalize như sau:
1 |
capitalize payload |
Kết quả:
Phương thức camelize
Phương thức này giúp chúng ta có thể sửa lại một chuỗi bất kỳ theo camel case như sau:
1 |
camelize payload |
Kết quả:
Phương thức dasherize
Phương thức này dùng để thêm ký tự “-” giữa các từ trong một chuỗi.
1 |
dasherize payload |
Kết quả:
Phương thức pluralize
Phương thức này hơi đặc biệt xí, vì nó chỉ giúp chúng ta correct một danh từ trong tiếng Anh ở dạng số nhiều, ví dụ như chúng ta có mouse trong tiếng Anh ở số ít, số nhiều sẽ là mice. Các bạn sử dụng nó như sau:
1 |
pluralize payload |
Ví dụ:
Phương thức singularize
Tương tự như phương thức pluralize, chỉ có điều mục đích của nó là ngược lại:
1 |
singularize payload |
Ví dụ:
Phương thức lower
Viết thường một chuỗi thôi các bạn
1 |
lower payload |
Ví dụ:
Phương thức upper
Còn này thì viết hoa chuỗi:
1 |
upper payload |
Ví dụ: