Định nghĩa 1 từ là dãy tối đa 10 chữ cái Latinh, trong văn bản các từ phân cách với nhau bằng ít nhất 1 kí tự không phải chữ cái . Làm thế nào để ta tách được các từ trong văn bản này và lưu lại (bằng mảng, danh sách hoặc cây …) để thao tác sau này ạ ?
Em xin cảm ơn !!!
Tách từ trong chuỗi văn bản C
Split chuỗi qua các kí tự trong bảng mã Unicode từ U+0000 đến U+007F (nguồn: https://en.m.wikipedia.org/wiki/Basic_Latin_(Unicode_block) ).
Mặc dù chưa hiểu lắm nhưng em cảm ơn ạ @@
À nhầm, tất cả các kí tự không nằm trong khoảng U+0000 đến U+007F mới đúng. Em cứ hiểu là các kí tự ở bảng chữ cái Latinh nằm ở trong khoảng đó ở bảng mã unicode. Wikipedia về bảng mã unicode: https://vi.m.wikipedia.org/wiki/Unicode
Em cứ chia chuỗi bằng các kí tự phân cách chuỗi không nằm trong bảng chữ cái Latinh như dấu cách, dấu phẩy,… rồi đưa vào một mảng là xong.
Ví dụ: Chuỗi “Xin chào các bạn” em chia chuỗi bằng dấu cách(không nằm trong bảng chữ cái Latinh) thành mảng là [“Xin”, “chào”, “các”, “bạn”]
Về lý thuyết thì em hiểu nhưng áp dụng vào code bằng C thì em ngu ngơ quá ạ , do không có thư viện hỗ trợ mạnh với lại String trong C lại biểu diễn bằng Char Array @@
muốn split chuỗi thì em có thể dùng hàm strtok nhé. Lưu ý là hàm này sẽ thay đổi luôn cái nội dung của string truyền vào nên nếu em không muốn thay đổi nội dung thì nên khai báo biến khác.
WOW , em vừa mới tìm hiểu được về hàm này luôn , đúng ý ghê kk
Cảm ơn bro ạaaa !!!
Không có chi
. Mà vừa đủ 10 comment luôn :3
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?