-
Hàm chuyển từ có dấu sang không dấu trong Tiếng Việt
Xuân Thanh > 14-01-14, 03:23 PM
Đã có khi nào, bạn cần chuyển một đoạn văn bản Tiếng Việt từ có dấu sang không dấu chưa? Ví dụ đoạn văn bản sau :
"Chào mừng Thủ Thuật Access. Chúc các thành viên năm mới có nhiều điều mới và luôn gắn bó với Thủ Thuật Access"
chuyển thành :
"Chao mung Thu Thuat Access. Chuc cac thanh vien nam moi co nhieu dieu moi va luon gan bó voi Thu Thuat Access"
Tôi xin giới thiệu với các bạn hàm ConvertToNotSign sau đây sẽ giúp làm việc đó
Mã PHP:Function ConvertToNotSign(ByVal sContent As String) As String
Dim i As Long
Dim intCode As Long
Dim sChar As String
Dim sConvert As String
ConvertToNotSign = AscW(sContent)
For i = 1 To Len(sContent)
sChar = Mid(sContent, i, 1)
If sChar <> "" Then
intCode = AscW(sChar)
End If
Select Case intCode
Case 273
sConvert = sConvert & "d"
Case 272
sConvert = sConvert & "D"
Case 224, 225, 226, 227, 259, 7841, 7843, 7845, 7847, 7849, 7851, 7853, 7855, 7857, 7859, 7861, 7863
sConvert = sConvert & "a"
Case 192, 193, 194, 195, 258, 7840, 7842, 7844, 7846, 7848, 7850, 7852, 7854, 7856, 7858, 7860, 7862
sConvert = sConvert & "A"
Case 232, 233, 234, 7865, 7867, 7869, 7871, 7873, 7875, 7877, 7879
sConvert = sConvert & "e"
Case 200, 201, 202, 7864, 7866, 7868, 7870, 7872, 7874, 7876, 7878
sConvert = sConvert & "E"
Case 236, 237, 297, 7881, 7883
sConvert = sConvert & "i"
Case 204, 205, 296, 7880, 7882
sConvert = sConvert & "I"
Case 242, 243, 244, 245, 417, 7885, 7887, 7889, 7891, 7893, 7895, 7897, 7899, 7901, 7903, 7905, 7907
sConvert = sConvert & "o"
Case 210, 211, 212, 213, 416, 7884, 7886, 7888, 7890, 7892, 7894, 7896, 7898, 7900, 7902, 7904, 7906
sConvert = sConvert & "O"
Case 249, 250, 361, 432, 7909, 7911, 7913, 7915, 7917, 7919, 7921
sConvert = sConvert & "u"
Case 217, 218, 360, 431, 7908, 7910, 7912, 7914, 7916, 7918, 7920
sConvert = sConvert & "U"
Case 253, 7923, 7925, 7927, 7929
sConvert = sConvert & "y"
Case 221, 7922, 7924, 7926, 7928
sConvert = sConvert & "Y"
Case Else
sConvert = sConvert & sChar
End Select
Next
ConvertToNotSign = sConvert
End Function
Thân mến -
RE: Hàm chuyển từ có dấu sang không dấu trong Tiếng Việt
MTNQ > 15-01-14, 03:36 PM
Thanks bác phát!
Hàm này rất hữu ích cho việc tạo mã (mã học sinh , mã khách hàng...) và tìm kiếm (giống như Google vậy) -
RE: Hàm chuyển từ có dấu sang không dấu trong Tiếng Việt
Xuân Thanh > 15-01-14, 05:21 PM
Sẽ có rất nhiều ứng dụng cần đến nó đấy. Tùy vào việc người sử dụng dùng vào mục đích gì. chính vì thế tôi mới chia sẻ hàm này
Thân mến -
RE: Hàm chuyển từ có dấu sang không dấu trong Tiếng Việt
vulhu06 > 15-04-14, 09:41 AM
(15-01-14, 05:21 PM)Xuân Thanh Đã viết: Sẽ có rất nhiều ứng dụng cần đến nó đấy. Tùy vào việc người sử dụng dùng vào mục đích gì. chính vì thế tôi mới chia sẻ hàm này
Thân mến
Cám ơn Xuân Thanh, em chưa hình dung hàm này nó làm việc ra sao và áp dụng vào bài toán của em ra sao nhưng em sẽ cố gắng tìm hiểu -
RE: Hàm chuyển từ có dấu sang không dấu trong Tiếng Việt
ledangvan > 05-08-19, 04:01 PM
Bạn Xuân Thanh !
Cái hàm này rất hay, nhưng có thể làm ngược lại được không : Nghĩa là biến một đoạn văn bản không dấu thành có dấu
Cái này tôi muốn có vì trường hợp sổ phụ của các Ngân hàng hầu hết họ đánh ko có dấu, tôi muốn dùng nguồn dữ liệu này nhập vào phần mềm luôn, đỡ mất công cho người nhập liệu.
Nếu bạn hoặc ai có xin chia sẻ giùm. Trân trọng cảm ơn -
RE: Hàm chuyển từ có dấu sang không dấu trong Tiếng Việt
Noname > 06-08-19, 08:43 AM
(05-08-19, 04:01 PM)ledangvan Đã viết: Bạn Xuân Thanh !
Từ không dấu thành có dấu khó đấy bạn, tiếng Việt có tới 6 thanh, 6 nguyên âm đeo râu mũ, phụ âm cũng có chữ "đ". Biết lấy cái nào bỏ cái nào?
Cái hàm này rất hay, nhưng có thể làm ngược lại được không : Nghĩa là biến một đoạn văn bản không dấu thành có dấu
Cái này tôi muốn có vì trường hợp sổ phụ của các Ngân hàng hầu hết họ đánh ko có dấu, tôi muốn dùng nguồn dữ liệu này nhập vào phần mềm luôn, đỡ mất công cho người nhập liệu.
Nếu bạn hoặc ai có xin chia sẻ giùm. Trân trọng cảm ơn
Kể cả cùng 1 ngữ cảnh cũng có khi có 2 từ mang dấu khác nhau và ý khác nhau. Dạng như : "Em dang o truong" -
RE: Hàm chuyển từ có dấu sang không dấu trong Tiếng Việt
lmthu > 06-08-19, 08:49 AM
Tôi nghĩ rằng nếu có hàm chuyển đổi Tiếng Việt từ không dấu sang có dấu thì độ chính xác chỉ từ 65-70% (vì kỹ thuật lập trình rất khó gần giống như tra từ điển dịch Anh-Việt mà như các bạn biết thì cỡ như Google dịch thì chỉ đúng từ 70-80% thôi!) -
RE: Hàm chuyển từ có dấu sang không dấu trong Tiếng Việt
nguyenvinh69 > 08-02-20, 05:49 PM
Cảm ơn Xuân Thanh!
Nếu ai dùng hàm này trong Excel hay Access thì nhớ thêm 2 dòng sau đây:
Case 768, 769, 771, 777, 803
sConvert = sConvert