• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Đổi các chữ đầu thành chữ hoa (Title case)

Các thủ thuật liên quan đến xử lý chuỗi và thời gian
Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4756
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 509 time

Đổi các chữ đầu thành chữ hoa (Title case)

Gửi bàigửi bởi truongphu » CN 06/04/2008 10:27 pm

Thủ thuật: Đổi các chữ đầu thành chữ hoa (Title case)
Tác giả: PhuongThanh37">PhuongThanh37
Mô tả: Đổi các chữ đầu thành chữ hoa


Mã: Chọn hết

  1. Function S1(ByVal St1 As String) As String
  2. A = Split(St1, " ")
  3. For i = 0 To UBound(A)
  4.    A(i) = UCase(Left(A(i), 1)) & Right(A(i), Len(A(i)) - 1)
  5. Next
  6. S1 = Join(A, " ")
  7. End Function

7 dòng! Dùng được cho chữ đầu là Unicode Mong các bạn bên dưới xem lại
Sửa lần cuối bởi truongphu vào ngày CN 06/04/2008 11:09 pm với 1 lần sửa.


o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

Hình đại diện của người dùng
anhtuyenbk
Guru
Guru
Bài viết: 1311
Ngày tham gia: T.Năm 22/09/2005 4:12 pm
Đến từ: Một nơi chừa từng biết, chưa từng nghe, chưa từng thấy
Been thanked: 38 time

Re: Đổi các chữ đầu thành chữ hoa (Title case)

Gửi bàigửi bởi anhtuyenbk » CN 06/04/2008 10:37 pm

Phức tạp quá, cái này VB có sẵn mà.

Mã: Chọn hết

  1. MsgBox (StrConv("day la ham co san", vbProperCase))
Kiếm cơm cho qua ngày tháng
https://www.facebook.com/pinduphongpisenchinhhang

giongto35
Thành viên danh dự
Thành viên danh dự
Bài viết: 194
Ngày tham gia: T.Năm 19/04/2007 10:17 am
Đến từ: Đà Nẵng City
Been thanked: 1 time
Liên hệ:

Re: Đổi các chữ đầu thành chữ hoa (Title case)

Gửi bàigửi bởi giongto35 » CN 06/04/2008 11:02 pm

Đâu cần phải là cứ có sẵn , làm như thế cũng có khi khôn ra chứ :)
________________________________________________________________________________________________
. . . . . . . . . . . . .. .

Hình đại diện của người dùng
hoangluyen
Thành viên năng nổ
Thành viên năng nổ
Bài viết: 61
Ngày tham gia: T.Năm 03/04/2008 3:26 pm
Đến từ: Hải Hậu - Nam Định
Liên hệ:

Re: Đổi các chữ đầu thành chữ hoa (Title case)

Gửi bàigửi bởi hoangluyen » T.Sáu 11/04/2008 10:23 am

Ờ hờ!
Đây thể hiện phong cách pro đấy chứ, mình thích cái giải thuật của truongphu.
Cảm ơn nhiều mình đã mở mang đầu óc ra nhiều.
..::Chỉ có tình yêu (*) và lao động sẽ làm cho con người trở nên đẹp hoàn mĩ ::..
-------------------------------------------------------------------

miucon20
Thành viên tích cực
Thành viên tích cực
Bài viết: 193
Ngày tham gia: T.Sáu 04/06/2010 12:35 pm
Has thanked: 27 time
Been thanked: 1 time

Re: Đổi các chữ đầu thành chữ hoa (Title case)

Gửi bàigửi bởi miucon20 » T.Ba 17/01/2012 4:56 pm

anhtuyenbk đã viết:Phức tạp quá, cái này VB có sẵn mà.

Mã: Chọn hết

MsgBox (StrConv("day la ham co san", vbProperCase))


Của bác Phú hay đấy còn cái của ban không hỗ trợ tốt Unico đâu. Bạn thử chữ Đây là hàm có sẵn xem nó sẽ hiển thị Dây Là .... ngay.

Hình đại diện của người dùng
VuVanHoanh
Thành viên danh dự
Thành viên danh dự
Bài viết: 1259
Ngày tham gia: T.Năm 03/06/2010 9:23 pm
Đến từ: Kim Sơn - Đông Triều - Quảng Ninh
Has thanked: 22 time
Been thanked: 137 time
Liên hệ:

Re: Đổi các chữ đầu thành chữ hoa (Title case)

Gửi bàigửi bởi VuVanHoanh » T.Tư 18/01/2012 10:05 am

Variable Not denified: A; i
thêm một dòng Dim = 8 :D
  1. Function S2(ByVal st As String) As String
  2.     Dim a As String, i As Integer
  3.     For i = 2 To Len(st)
  4.         If Mid(st, i - 1, 1) = " " Then a = a & UCase(Mid(st, i, 1)) Else a = a & Mid(st, i, 1)
  5.     Next
  6.     S2 = UCase(Mid(st, 1, 1)) & a
  7. End Function

7 dòng :D
Since 2008...
One love! :x

Hình đại diện của người dùng
nhochoclaptrinh
Thành viên danh dự
Thành viên danh dự
Bài viết: 514
Ngày tham gia: T.Bảy 28/05/2011 12:10 pm
Has thanked: 15 time
Been thanked: 83 time

Re: Đổi các chữ đầu thành chữ hoa (Title case)

Gửi bàigửi bởi nhochoclaptrinh » T.Năm 19/01/2012 9:26 am

  1. Function TCase(ByVal s As Variant)
  2.     For Each ss In Split(s)
  3.         s = Replace(s, ss, UCase(Left(ss, 1)) & Right(ss, Len(ss) - 1))
  4.     Next:    TCase = s
  5. End Function

:D
Sad eyes never lie :((


Quay về “[VB] Chuỗi và Thời gian”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách