1. Giới thiệu
Trong một số ứng dụng bạn cần đếm số từ trong đoạn văn, ví dụ như hiển thị phần mô tả của đoạn văn ngắn của phần tin tức cần giới hạn số lượng từ của một tin. Thì điều đầu tiên bạn cần là phải xác định được số từ trong một đoạn văn và giới hạn lại.
Hôm nay, chúng ta cần tìm hiểu về thuật toán giới hạn số lượng trong đoạn văn
2. Thiết kế
Bạn thiết kế một ứng dụng gồm trang và đặt tên là sliptword.aspx và thiết kế các control như sau:
- Textbox đặt tên là txtDescription và textmode là MultiLine
- Textbox đặt tên là txtNumberWord
- Button đặt tên là btnSplitWord và text là Sliptword
- Label để hiển thị thông báo trả về lblMessage
3. Coding
Bạn thực hiện viết một đoạn mã lệnh bằng function với kiểu trả về là string và đặt tên là SplitWord với 2 đối số truyền vào strParagraph và numberGetWor
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| public string SplitWords(string strParagraph, int numberGetWord) { string Word = string. Empty ; string[] arrWord = System.Text.RegularExpressions.Regex.Split(strParagraph, @ "\W" ); for (int i = 0; i < arrWord.Length; i++) { if (i != numberGetWord) { Word += arrWord[i] + " " ; } else { Word += "..." ; break ; } } return Word; } |
4. Giải thích
- Khai báo một biến word kiểu string: string Word = string.Empty;
- Quan trọng khái báo một mảng arrWord để chứa các từ được chia ra với điều kiện là một khoảng trắng hay nhiều khoảng trắng. Dùng lớp Expression để biểu thị điều này qua quy tắc @"\W"
1
| string[] arrWord = System.Text.RegularExpressions.Regex.Split(strParagraph, @ "\W" ); |
- Sử dụng vòng lặp for để duyệt qua các từ trong mảng word này và sử dụng điều kiện để thoát
1
2
3
4
5
6
7
8
| for (int i = 0; i < arrWord.Length; i++) { if (i != numberGetWord) { Word += arrWord[i] + " " ; } else { Word += "..." ; break ; } } |
- Cuối cùng return về chuỗi word
- Gọi hàm SplitWord khi click vào nút Splitword
1
2
3
4
| protected void btnSplitWord_Click(object sender, EventArgs e) { lblMessage.Text = SplitWords(txtDescription.Text, Convert.ToInt16(txtNumberWord.Text)); } |
- Chuyển chuỗi trong txtNumberWord sang dạng số để thỏa mãn điều kiện
Comments[ 0 ]
Đăng nhận xét