如何在JavaScript中檢查字串是否包含子字串?
JavaScript提供了多種方法來檢查字串是否包含子字串。在這篇文章中,我們將使用以下三種方法:
String search() 方法
String indexOf() 方法
String includes() 方法
讓我們詳細探討每種方法。
1. String search() 方法
字串 search 方法可用於在字串中搜索文字(使用正則表示式)。
它將字串與正則表示式匹配,並返回第一個匹配項的索引(位置)。
如果未找到匹配項,則返回 -1。區分大小寫。
String search() 方法是 ES1 特性。所有瀏覽器都完全支援它。
語法
string.search(searchValue)
searchValue 是正則表示式或字串(將被轉換為正則表示式)。
示例
您可以嘗試執行以下程式碼,以檢查字串“Tutorialspoint: Free Video Tutorial”是否包含子字串“point”。我們將使用 string search() 方法。
<html>
<head>
<title>JavaScript String search() Method</title>
</head>
<body>
<script>
var re = "point";
var str = "Tutorialspoint: Free Video Tutorials";
if ( str.search(re) == -1 ) {
document.write("Does not contain Point" );
} else {
document.write("Contains Point!" );
}
</script>
</body>
</html>輸出
這將產生以下結果:
Contains Point!"
2. String indexOf() 方法
String indexOf() 方法可用於檢查字串是否包含子字串。
它返回字串中值的第一次出現的位置(子字串),否則如果未找到該值,則返回 -1。
String indexOf() 方法區分大小寫。此方法不能針對正則表示式進行搜尋。
String indexOf() 方法是 ES1 特性。所有瀏覽器都完全支援它。
語法
string.indexOf(searchvalue, start)
引數
searchValue - 要搜尋的字串。
Start - 開始搜尋的索引(預設為 0)。這是一個可選引數。
示例
在下面的示例程式中,我們將使用 string indexOf() 方法來檢查字串“Tutorialspoint: Free Video Tutorial”是否包含子字串“point”。
<html>
<head>
<title>JavaScript String search() Method</title>
</head>
<body>
<script>
var re = "point";
var str = "Tutorialspoint: Free Video Tutorials";
if ( str.indexOf(re) !== -1) {
document.write("Contains "+ re );
} else {
document.write("Does not contain "+ re);
}
</script>
</body>
</html>輸出
這將產生以下結果:
Contains point
3. String includes() 方法
String includes() 方法在 ES6 中引入。所有現代瀏覽器都支援它。
如果字串包含指定的子字串,則返回 true,否則返回 false。
includes() 方法區分大小寫。Internet Explorer 11(或更早版本)不支援此方法。
語法
string.includes(searchvalue, start)
引數
searchValue - 要搜尋的字串。
Start - 開始搜尋的索引(預設為 0)。這是一個可選引數。
示例
在下面的示例程式中,我們將使用 string includes() 方法來檢查字串“Tutorialspoint: Simply Easy Learning”是否包含子字串“JavaScript”。
<html>
<head>
<title>JavaScript String search() Method</title>
</head>
<body>
<script>
var re = "JavaScript";
var str = "Tutorialspoint: Simply Easy Learning";
if ( str.includes(re)) {
document.write("Contains "+ re );
} else {
document.write("Does not contain "+ re);
}
</script>
</body>
</html>輸出
這將產生以下結果:
Does not contain JavaScript
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP