#️⃣ Edit String #️⃣

Viết chức năng sửa chuỗi khoảng trắng đến ký tự tiếp theo thành hoa

Cùng nhau viết và xem kết quả hoạt động. Tuy không hoàn hảo nhưng cũng là khởi đầu nếu bạn chưa biết.
js_masterGiải Thuật
cau-truc-du-lieu-va-giai-thuat.jpg

Chào các bạn

Trong bài viết này mình sẽ hướng dẫn các bạn làm bài tập

Viết chức năng sửa chuỗi khoảng trắng đến ký tự tiếp theo thành hoa

1let str = "hồ quang trí";
2
3// Thành
4
5// hồQuangTrí

Viết chức năng

1let str = "   hồ quang    trí";
2
3function editStringBySpace(str) {
4    if (typeof str !== "string") {
5        throw new Error(`Đầu vào ${typeof str} không phải là string`);
6    }
7
8    let ketQua = "";
9    for (let i = 0; i < str.length; i++) {
10        if (str[i] === " " && str[i + 1] !== " ") {
11            let kyTu = str[i + 1];
12            if (kyTu) {
13                ketQua += kyTu.toUpperCase();
14            }
15            i = i + 1;
16            continue;
17        } else {
18            if (str[i] === " ") {
19                ketQua += "";
20            } else {
21                ketQua += str[i];
22            }
23        }
24    }
25    console.log(ketQua);
26}
27
28editStringBySpace(str); // HồQuangTrí
29editStringBySpace("tôi dang làm ---cái    này"); // tôiDangLàm---cáiNày

Ở phương pháp trên mình chỉ so sánh khoảng trắng nên sẽ không hoạt động với ký tự khác

1editStringBySpace("tôi dang làm ---cái    này"); // tôiDangLàm---cáiNày

Nếu bạn biết Regexp thì càn đơn giản

1let str = "  hồ quang    trí";
2
3function editStringBySpace(str) {
4    if (typeof str !== "string") {
5        throw new Error(`Đầu vào ${typeof str} không phải là string`);
6    }
7
8    let ketQua = str.replace(/\s+./gi, (match) => {
9        let kyTu = match[match.length - 1].toUpperCase();
10        return kyTu;
11    });
12
13    console.log(ketQua);
14}
15
16editStringBySpace(str); // HồQuangTrí
17editStringBySpace("tôi đang làm ---cái    này"); // tôiDangLàm---cáiNày

Nếu bạn biết về mảng thì càng dể

Các bạn thử làm cách này theo kiểu mảng thử nhé.

1let str = "  hồ quang    trí";
2
3function editStringBySpace(str) {
4    if (typeof str !== "string") {
5        throw new Error(`Đầu vào ${typeof str} không phải là string`);
6    }
7    let ketQua = ""
8    
9    // Bạn viết code ở đây
10
11    console.log(ketQua);
12}
13
14editStringBySpace(str); // HồQuangTrí
15editStringBySpace("tôi đang làm ---cái    này"); // tôiDangLàm---cáiNày

Nói chung là cũng tùy thuộc tình huống mà chúng ta dùng cách nào thấy thuận tiện.

Tổng kết

Trong bài viết này mình đã viết ra chức năng cũng hơi phức tạp. Các bạn có thể giải hay hơn thì cứ comment vào bình luận mình xem mình sữa lại nhé.

  • sửa chuỗi
  • chức năng
  • string

OFFJS.COM - Blog học tập giải trí - 🐲

Chia sẻ nhiều kiến thức thú vị trong lập trình cũng như cuộc sống.

Giới thiệu


Trang web này mình sẽ nói về kiến thức lập trình và cuộc sống mà các bạn mới học hay đang dự định học. Có một bước đi đầu đời vững chắc.

Hồ Quang Trí.jpg

Đi kèm với đó là những lý thuyết và các dòng code minh họa. Để các bạn dễ hình dung.

Đơn nhiên cũng không dễ dàng ngày một ngày hai mà học hết được.

Học Tập Là Một Con Đường Dài Vô Tận

Nó sẽ nuốt các bạn vô số thời gian nhưng bù lại khi đã biết thì mọi thứ thật là tuyệt.

1console.log("Hồ Quang Trí");

Nếu có ai nói bạn học lập trình trong vòng 3 đến 6 tháng thì mình xin nói thật không bao giờ có chuyện đó nhé.

Chúc các bạn thành công.

Chân trang

phone-toan-phat.png

0353210168

address-toan-phat.png

Việt Nam