Viết lại hàm PHP chuyển dấu thanh cho từ tiếng Việt (v1.2)

Trước tôi có viết hàm chuyển dấu thanh, nó hoạt động tốt, nhưng mã rối, mà mã rối thì có vẻ vẫn không ổn rồi, nên hôm nay tôi sẽ viết lại. Về quy tắc đặt dấu thanh chúng ta dùng kiểu cũ, phổ biến hơn. Chúng ta sẽ không tranh cãi về mặt học thuật liên quan đến ngôn ngữ học, mà chỉ tập trung vào việc chuyển dấu để thống nhất. Có thống nhất được vị trí dấu thì các xử lý liên quan đến tiếng Việt mới chính xác được, khi nào có khả năng tôi sẽ …

Đọc thêm

Viết hàm PHP kiểm tra lỗi chính tả đơn giản cho tiếng Việt (v1.2)

Đã có phiên bản plus của hàm kiểm tra chính tả tiếng Việt, cho độ chính xác cải thiện thêm khoảng 20% so với hàm trong bài này. — Trong bài viết này tôi sẽ trình bày và viết hàm PHP phát hiện lỗi chính tả ở mức độ đơn giản, dù không đạt kết quả ấn tượng, nó vẫn loại trừ được khá nhiều trường hợp sai lỗi chính tả điển hình. Hàm này cần có các require sau trên cùng file để chạy: Các mảng nguyên âm, phụ âm tiếng Việt; Các hàm chuyển đổi mã hex; Các …

Đọc thêm

Các hàm PHP để thao tác với chuỗi tiếng Việt (v1.2)

Phần này tôi sẽ xây dựng các hàm để thao tác sâu hơn với chuỗi tiếng Việt nói chung, và họ tên người Việt nói riêng. Cái này sẽ sử dụng các function độc lập trước đó là: Các hàm chuyển mã hex; Các mảng phụ âm, nguyên âm, dấu tiếng Việt; Mã đầy đủ (phần giải thích cho từng hàm có dưới mã đầy đủ): 1. Loại bỏ khoảng trắng dư thừa trước, sau một từ Hai hàm cơ bản được dùng là: trim dùng để loại bỏ khoảng trắng trước và sau chuỗi; preg_replace để tìm 2 khoảng …

Đọc thêm

Các hàm PHP dùng để tách họ tên người tiếng Việt (v1.2)

Đây là các hàm PHP tôi thường sử dụng để thao tác với họ tên người tiếng Việt. Tiền tố vnn trong tên hàm là viết tắt cho từ vietnamese names. Các function trong file dưới đây là độc lập, nó không cần require đến file .php khác để hoạt động. Khi thao tác file này yêu cầu ngoài bản thân nó, còn có require đến file xử lý chuỗi tiếng Việt để chạy. Mã tổng hợp (phần giải thích cho từng function có ở phần sau mã tổng hợp): 1. Đếm số lượng từ trong tên Loại bỏ khoảng …

Đọc thêm

Các mảng PHP cơ bản cho nguyên âm và phụ âm trong tiếng Việt (v1.2)

Khi tôi định viết lại các hàm tách từ tiếng Việt dính trong tên người (ví dụ nguyễn đứcanh), và hàm sửa thả dấu tiếng Việt trong tên người (ví dụ ngũyên đức anh), tôi bỗng nhận ra sự thiếu các mảng tiêu chuẩn phản ánh các đặc điểm của chữ viết tiếng Việt làm cho kết quả giảm độ chính xác. Vậy nên hôm nay tôi sẽ cập nhật các mảng này, chủ yếu là nhờ tìm hiểu thêm một số kiến thức căn bản về nguyên âm và phụ âm trong tiếng Việt. (PS: vì kiến thức ngôn …

Đọc thêm

Các hàm PHP dùng để kiểm tra dữ liệu ngày tháng năm sinh người (v1.2)

Trong bài viết này tôi sẽ trình bày với các bạn cách kiểm tra, chuẩn hóa dữ liệu ngày tháng năm sinh ở người trong một tệp dữ liệu lớn. Một số lưu ý: Định dạng chuẩn mà chúng ta hướng đến là cấu trúc dd/mm/yyyy, ví dụ như 05/10/2008. Cấu trúc này yêu cầu ngày là dạng 2 số, nếu dưới 10 thì số 0 phải được bổ sung; tháng cũng là dạng 2 số, nếu dưới 10 thì số 0 cũng phải được bổ sung vào. Năm là dạng 4 số, ví dụ 1998, 2003. Nếu năm là …

Đọc thêm

Các hàm PHP chuyển đổi ký tự tiếng Việt từ dạng mã hex ít phổ biến về dạng phổ biến và ngược lại (v1.2)

Bản này tôi cập nhật thêm việc chuyển đổi cả ký tự viết hoa nữa. Bốn hàm bao gồm: pop_hex_convert($str): chuyển chuỗi tiếng Việt ở dạng mã hóa hex không phổ biến sang dạng phổ biến, chuyển nó thành chuỗi ký tự viết thường. Đầu vào có thể là chuỗi viết hoa, viết thường hay cả hai, đầu ra chỉ bao gồm các ký tự viết thường; rarely_hex_convert($str): chuyển chuỗi tiếng Việt ở dạng mã hóa hex phổ biến về dạng không phổ biến, chuyển nó thành chuỗi ký tự viết thường. Đầu vào có thể là chuỗi viết hoa, …

Đọc thêm