JavaScript RegExp exec() method
- 前一頁 compile()
- Susunod na pahina test()
- Bumalik sa nakaraang lebel JavaScript RegExp Reference Manual
Definisyon at paggamit
exec()
Paraan na nagtutest sa pagtugma sa string.
Ang paraan na ito ay pangkalahatang pagtugma ng pattern.
Kung natagpuan ang pagtugma, binaback ang array ng resulta, kung hindi natagpuan, binaback... null
.
Egemplo
Talaksan 1
Hanapin ang character "e" sa string:
let text = "The best things in life are free"; let result = /e/.exec(text);
Talaksan 2
Hanapin ang "Hello" at "W3School" sa buong string:
let text = "Hello world!"; // Hanapin ang "Hello" let result1 = /Hello/.exec(text); // Hanapin ang "W3School" let result2 = /W3School/.exec(text);
Grammar
regexp.exec(string)
Parametro
Parametro | 描述 |
---|---|
string | Mandahil. Ang string na dapat hanapin. |
Halaga ng binalik
Uri | 描述 |
---|---|
Array | Kung natagpuan ang pagtugma, ang array na naglalaman ng teksto ng pagtugma, kung hindi natagpuan, binaback null. |
Detalye ng teknolohiya
Halaga ng binalik
Array, na naglalaman ng mga resulta ng pagtugma. Kung walang natagpuan, ang halaga ay... null
Sa ibaba ay binabanggit ang hugis ng binaback na array.
Ipagbubulong...
Uri | 描述 |
---|---|
TypeError | Ipagbubulong ang kaso kung ang bagay na tinatawag na object na tinawagan ang paraan ay hindi RegExp. |
Paliwanag
Sa lahat ng paraan ng pagtugma ng RegExp at String,exec()
ay may pinakamalakas na funksyon. Ito ay isang pangkalahatang paraan, mas madaling gamitin kaysa sa... RegExp.test(),String.replace() 和 String.match() ay napakalalim at napakalaki.
exec()
Ay maghahanap ng string na ibig sabihin... string...at pagkatapos ay napagkukunan ng tumugma sa regular na ekspresyon... regexp ang tumugma na teksto. Kung... exec()
Natagpuan ang tumugma na teksto, ito ay binaback sa isang array ng resulta. Kung hindi natagpuan, binaback... null
Ang unang elemento ng binaback na array ay ang teksto na tumugma sa ekspresyon. Ang ikalawang elemento ay tumugma sa... regexp 的第一個子表达式相匹配的文本(如果存在)。第 2 個元素是与 regexp 的第二个子表达式相匹配的文本,以此類推。通常,數組的 length 屬性聲明的是數組中的元素個數。除了數組元素和 length 屬性之外,exec()
還返回兩個屬性。index 屬性聲明的是匹配文本的第一個字符的位置。input 屬性指的是 string。 exec()
方法時,返回的數組與調用方法 String.match() 返回的方法相同。
在調用非全局模式的 exec()
方法時,它將進行檢索,並返回上述結果。不過,當 regexp 是一個全局正則表達式時,exec()
的行為就稍微複雜一些。它在 regexp 的屬性 lastIndex 指定的字符處開始檢索字符串 string 。 regexp 的 lastIndex 屬性設置為匹配文本的第一個字符的位置。這就是說,可以通過反覆地調用 exec()
方法來遍歷字符串中的所有匹配文本。當 exec() 再也找不到匹配的文本時,它將返回 null
,並且把屬性 lastIndex 重置為 0 。如果在另一個字符串中完成了一次模式匹配之後要開始檢索新的字符串,就必须手動地把 lastIndex 屬性重置為 0 。
注意,無論 regexp 是否是全局模式,exec()
都會將完整的細節添加到它返回的數組中。這就是 exec()
和 String.match() 的不同之處,後者在全局模式下返回的信息要少得多。事實上,在循環中反覆地調用 exec()
方法是獲得全局模式的完整模式匹配信息的唯一方法。
瀏覽器支持
exec()
是 ECMAScript1 (ES1) 特性。
所有瀏覽器都完全支持 ES1 (JavaScript 1997):
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
支持 | 支持 | 支持 | 支持 | 支持 | 支持 |
正則表達式搜索方法
在 JavaScript 中,正則表達式文本搜索可以用不同的方法完成。
使用模式(pattern)作為正則表達式,這些是最常用的方法:
範例 | 描述 |
---|---|
text.match(模式) | 字符串方法 match() |
text.search(模式) | 字符串方法 search() |
模式.exec(text) | RexExp 方法 exec() |
模式.test(text) | RexExp 方法 test() |
- 前一頁 compile()
- Susunod na pahina test()
- Bumalik sa nakaraang lebel JavaScript RegExp Reference Manual