Cách cắt chuỗi trong JS?

Mình có một đoạn text như thế này:

/cgi-bin/luci/;stok=0bf6828c0c2b5796df106e157a3f618f/admin/network/wireless/wifi1.network1
/cgi-bin/luci/;stok=0bf6828c0c2b5796df106e157a3f618f/admin/network/wireless/wifi0.network1

Cắt lấy đoạn wifi0wifi1 bằng JS như thế nào cho nhanh nhỉ?

có học sơ qua JS. chắc dùng “substring(76, 81)” được nếu độ dài các chuỗi như nhau =)))

Không ổn, độ dài có thể thay đổi trong tương lai mà mình không biết được. Làm vậy dễ sai lắm.

Anh viết thế này, code bừa quá nhưng không rành JS nên …

Về bản chất là cắt cái chuỗi ở chỗ wifi ra, sau đó lấy cái số 0 hoặc 1

function getWifiDeviceFromLink(alink) {
    var res = alink.split("wifi");
    alink = res[1];
    // alink == 1.network1
    res = alink.split(".");
    // res[0] == 1
    return Number(res[0]);
}

alink = "/cgi-bin/luci/;stok=0bf6828c0c2b5796df106e157a3f618f/admin/network/wireless/wifi1.network1"
getWifiDeviceFromLink(alink);

2 Likes

e ko biết a ạ . TT.TT

1 Like

Anh muốn dùng nhưng không biết áp dụng sao, cho anh xin cái lệnh đi :frowning:

Anh nghĩ mình có thể lấy được wifi1 bằng một dòng lệnh với regular expression

Dùng RegExp là nhanh nhất:
console.log(str.match(//(wifi\d)/g));
//= [“wifi1”,“wifi0”]

3 Likes

e ko biết viết a ơi. TT.TT

:)) học biết sơ qua nên k rõ lắm. hiện vẫn đang code java @@

Thank @Gio

anh sửa lại tí vì anh không cần cái \/

console.log(str.match(/(wifi\d)/g));
//= ["wifi1","wifi0"]
2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?