Từ 1 tới 5 trên tổng số 5 kết quả

Đề tài: Cắt chuổi và ghép chuổi có vòng lặp?

  1. #1
    Ngày gia nhập
    01 2011
    Bài viết
    128

    Mặc định Cắt chuổi và ghép chuổi có vòng lặp?

    Mình có một chuổi như sau : nha dat, bat dong san, mua ban dat ,nha dat online,.... (độ dài không nhất định)
    Mỗi chuổi con cách nhau bởi dấu ,
    Mình muốn cắt các chuổi con ra và ghép thêm chuổi "<a ...>" và "</a>" ở trước vào sau mỗi chuổi con.
    Sau khi ghép thêm "<a ...>" và </a", thì ghép chúng lại thì chuổi lớn.
    <a ...>nha dat</a>,<a ...>bat dong san</a>,<a ...>mua ban dat</a>,<a ...>nha dat online</a>
    Xin mọi người giúp đỡ

  2. #2
    Ngày gia nhập
    08 2012
    Bài viết
    574

    Cắt ra thì không khó, trong C# có hai lớp hỗ trợ cắt chuỗi cơ bản.
    String.Split(string toSplit), Regex.Split(string ToSplit).

    Ghép thì tất nhiên là dùng vòng lặp duyệt qua từng phần tử trong mảng.

    cơ bản như vầy:
    Visual C# Code:
    1. string WTF = "nhà đất,mua bán,cạp đất,blah.....";
    2. string[] WTFA = WTF.Split(",");
    3. string Result = "";
    4. for (int i = 0; i < WTFA.Length; i++) {
    5.     Result += string.Format("<a href=\"tag.php?key={0}\">{0}</a>", WTFA[i]);
    6.     if (i != WTFA - 1) Result += ",";
    7. }
    8. // Result: <a href="tag.php?key=nhà đất">nhà đất</a>,<a href="tag.php?key=mua bán">mua bán</a>,...
    Đã được chỉnh sửa lần cuối bởi SITUVNX : 06-02-2013 lúc 07:15 PM.

  3. #3
    Ngày gia nhập
    01 2011
    Bài viết
    128

    Trích dẫn Nguyên bản được gửi bởi SITUVNX Xem bài viết
    Cắt ra thì không khó, trong C# có hai lớp hỗ trợ cắt chuỗi cơ bản.
    String.Split(string toSplit), Regex.Split(string ToSplit).

    Ghép thì tất nhiên là dùng vòng lặp duyệt qua từng phần tử trong mảng.

    cơ bản như vầy:
    Visual C# Code:
    1. string WTF = "nhà đất,mua bán,cạp đất,blah.....";
    2. string[] WTFA = WTF.Split(",");
    3. string Result = "";
    4. for (int i = 0; i < WTFA.Length; i++) {
    5.     Result += string.Format("<a href=\"tag.php?key={0}\">{0}</a>", WTFA[i]);
    6.     if (i != WTFA - 1) Result += ",";
    7. }
    8. // Result: <a href="tag.php?key=nhà đất">nhà đất</a>,<a href="tag.php?key=mua bán">mua bán</a>,...
    Bị lỗi ở dòng string[] WTFA = WTF.Split(",");
    The best overloaded method match for 'string.Split(params char[])' has some invalid arguments

  4. #4
    Ngày gia nhập
    08 2012
    Bài viết
    574

    Viết mã tay không dùng IDE nên lỗi, chỗ đó là kiểu char.
    Sửa:
    Visual C# Code:
    1. string WTF = "nhà đất,mua bán,cạp đất,blah.....";
    2. string[] WTFA = WTF.Split(','); // Tham số chỗ này là char chứ ko phải string :D
    3. string Result = "";
    4. for (int i = 0; i < WTFA.Length; i++) {
    5.     Result += string.Format("<a href=\"tag.php?key={0}\">{0}</a>{1}", WTFA[i], i != WTFA.Length - 1 ? ", " : "");
    6. }
    7. // Result: <a href="tag.php?key=nhà đất">nhà đất</a>,<a href="tag.php?key=mua bán">mua bán</a>,...
    Đã được chỉnh sửa lần cuối bởi SITUVNX : 07-02-2013 lúc 10:33 AM.

  5. #5
    Ngày gia nhập
    01 2011
    Bài viết
    128

    cảm ơn mình làm được rồi.

Các đề tài tương tự

  1. Bài tập C++ Bỏ khoảng trống thừa trong chuỗi chỉ sử dụng các vòng lặp?
    Gửi bởi moitaplaptrinh trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 10
    Bài viết cuối: 07-05-2013, 09:51 AM
  2. Bài tập C Kiểm tra chuỗi đối xứng , dùng vòng lặp for bị lỗi !
    Gửi bởi n0b0dy.n0l0v3 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 12
    Bài viết cuối: 18-07-2012, 10:08 PM
  3. thay thế chuỗi con thứ i trong chuỗi mẹ bằng 1 chuỗi khác
    Gửi bởi nhat1811 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 06-08-2011, 08:25 AM
  4. Trả lời: 1
    Bài viết cuối: 29-06-2011, 12:02 AM
  5. [C++] Chuỗi bị xoá sau khi sử dụng vòng lặp for ???
    Gửi bởi hailoc12 trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 12
    Bài viết cuối: 18-06-2007, 10:25 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn