JavaScript String substring() 方法

定義和用法

substring() 方法從字符串中提取兩個索引(位置)之間的字符,并返回子字符串。

substring() 方法從頭到尾(不包括)提取字符。

substring() 方法不會更改原始字符串。

如果 start 大于 end,則交換參數:(4, 1) = (1, 4)。

小于 0 的開始或結束值被視為 0。

另請參閱:

split() 方法

slice() 方法

substr() 方法

實例

例子 1

從文本中提取子字符串:

let text = "Hello world!";
let result = text.substring(1, 4);

親自試一試

例子 2

從位置 2 開始:

let result = text.substring(2);

親自試一試

例子 3

如果 start 大于 end,則交換參數:

let result = text.substring(4, 1);

親自試一試

例子 4

如果 "start" 小于 0,它將從索引 0 開始:

let result = text.substring(-3);

親自試一試

例子 5

僅第一個:

let result = text.substring(0, 1);

親自試一試

例子 6

僅最后一個:

let result = text.substring(text.length - 1);

親自試一試

語法

string.substring(start, end)

參數

參數 描述
start

必需。非負的整數。起始位置。

第一個字符在索引 0 處。

end

可選。非負的整數。結束位置(至多,但不包括)。

如果省略,則提取字符串的其余部分。

返回值

類型 描述
字符串 包含被提取字符的字符串。

技術細節

返回值

返回新字符串,該字符串值包含 string 的一個子字符串,其內容是從 start 處到 end-1 處的所有字符,其長度為 endstart

說明

substring() 方法返回的子串包括 start 處的字符,但不包括 end 處的字符。

如果參數 startend 相等,那么該方法返回的就是一個空串(即長度為 0 的字符串)。如果 startend 大,那么該方法在提取子串之前會先交換這兩個參數。

請記住,該子串包括 start 處的字符,不包括 end 處的字符,返回的子串長度始終等于 end-start

請注意,split()substr() 都可以從一個字符串提取子串。和這些方法不同的是,substring() 方法不接受負的參數。

瀏覽器支持

substring() 是 ECMAScript1 (ES1) 特性。

所有瀏覽器都完全支持 ES1 (JavaScript 1997):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
支持 支持 支持 支持 支持 支持

相關頁面

JavaScript 字符串

JavaScript 字符串方法

JavaScript 字符串搜索