NỘI DUNG BÀI VIẾT
Kiểm tra String bắt đầu với một ký tự cụ thể
Hi xin chào các bạn lại là mình đây, tiếp tục chủ đề với JavaScript, cụ thể là làm việc với string hôm nay chúng ta cùng thảo luận về chủ đề “Kiểm tra String bắt đầu với một ký tự cụ thể”. Đầu đuôi câu chuyện như nào hãy cùng kéo xuống dưới để tìm hiểu nhé!
Làm sao để tìm được chữ ký tự A trong hình dưới nhỉ? Hmm, chuyện nhỏ như con thỏ, các bạn cùng đọc với mình nhé!
Xuyên suốt bài viết hôm nay, chúng ta sẽ đi giải quyết bài toán “Làm thế nào để kiểm tra được từ J có phải bắt đầu trong chuỗi JavaScript hay không?
1. Sử dụng method String.prototype.startsWith()
Chắc chắn đây là method dễ hiểu và dễ sử dụng nhất, nên không cần giới thiệu nhiều, startsWith()
trả về giá trị true
nếu match và false
nếu không
const word = 'JavaScript';
const char = 'J';
word.startsWith(char); // true
Code language: JavaScript (javascript)
Tuy nhiên bạn hãy lưu ý phương thức này không support anh bạn IE nên để work perfect trên nhiều trình duyệt ta cần sử dụng polyfill sau
if (!String.prototype.startsWith) {
Object.defineProperty(String.prototype, 'startsWith', {
value: function(search, rawPos) {
var pos = rawPos > 0 ? rawPos | 0 : 0;
return this.substring(pos, pos + search.length) === search;
}
});
}
Code language: JavaScript (javascript)
2. Sử dụng indexOf()
Phương thức này trả về vị trí của ký tự trong chuỗi, như vậy muốn biết ký tự J có nằm ở đầu chuỗi hay không ta cót như sau
const word = 'JavaScript';
const char = 'J';
word.indexOf(char) === 0 // true
Code language: JavaScript (javascript)
3. Sử dụng lastIndexOf()
lastIndexOf()
nhận vào 2 tham số là từ khóa cần tìm kiếm và index. Như vậy để giải quyết bài toán trên ta có thể làm như sau
const word = 'JavaScript';
const char = 'J';
word.lastIndexOf(char, 0) === 0 // true
Code language: JavaScript (javascript)
4. Sử dụng substring()
substring()
dùng để cắt chuỗi, với tham số đầu vào gồm vị trí bắt đầu và vị trí kết thúc. Như vậy ta có thể dùng hàm này cắt ra ký tự đầu và so sánh nó với ký tự cần tìm
const word = 'JavaScript';
const char = 'J';
word.substring(0, 1) === char // true
Code language: JavaScript (javascript)
5. Sử dụng string index
Cũng tương tự như array, với string bạn cũng có thể lấy được phần tử đầu nhờ sử dụng cú pháp sau
const word = 'JavaScript';
const char = 'J';
word[0] === char // true
Code language: JavaScript (javascript)
hoặc theo cách ngầu hơn
const word = 'JavaScript';
const char = 'J';
[...word][0] === char // true
Code language: JavaScript (javascript)
6. Sử dụng regex
Sức mạnh của regex thì chắc không cần giới thiệu nhiều nữa, trong regex có 1 ký tự giúp bạn kiểm tra bắt đầu chuỗi là ^
. Code sẽ như sau
const word = 'JavaScript';
const char = 'J';
new RegExp(`^${char}`).test(word) // true
Code language: JavaScript (javascript)
hoặc bạn có thể viết như này
const word = 'JavaScript';
const char = 'J';
/^J/.test(word) // true
Code language: JavaScript (javascript)
Kết luận
Trên đây mình đã giới thiệu cho các một số cách để kiểm tra chuỗi bắt đầu với một ký tự được chỉ định, nếu bạn còn cách nào hay ho hơn hãy chia sẻ cho mọi người cùng biết nhé ^^
Nếu thấy bài viết hay, hãy cho mình +1 upvote nhé. Nếu thích mình hãy nhấn nút follow để biết thêm nhiều thứ hay ho hơn. Chúc bạn thành công!
Nguồn: https://viblo.asia/p/lam-the-nao-de-kiem-tra-string-bat-dau-voi-mot-ky-tu-cu-the-OeVKBkGYZkW
Các bạn có thể tham khảo các bài viết hay về JavaScript tại đây.
Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.