<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## 12.2 用于模式匹配的String方法 String支持4種使用正則表達式的方法。 ||| ||| | search() | 按照給定的正則表達式進行搜索,返回一個整數,表示第一個與之匹配的字符串的起始位置,如果找不到匹配的子串,將返回-1。| | match() | 返回一個數組,成員是所有匹配的子字符串。| | replace() | 按照給定的正則表達式進行替換,返回替換后的字符串。| | split() | 按照給定規則進行字符串分割,返回一個數組,包含分割后的各個成員。| **1.search()** 按照給定的正則表達式進行搜索,返回一個整數,表示第一個與之匹配的字符串的起始位置,如果找不到匹配的子串,將返回-1。 ~~~ "javascript".search(/script/i); ~~~ 上面的代碼的返回值為4 如果search()的參數不是正則表達式,則首先會通過RegExp構造函數將它轉換成正則表達式,search()方法不支持全局檢索,因為它忽略正則表達式參數中的修飾符g。 **2.match()** match()方法的唯一參數是一個正則表達式,返回的是一個由匹配結果組成的數組。如果該正則表達式設置了修飾符g,則返回的數組包含字符串中的所有匹配結果。 '1 plus 2 equals 3'.match(/\d+/g) //返回["1","2","3"] 返回來的數組還帶有另外兩個屬性:index和input,分別表示包含發生匹配的字符位置和引用的正在檢索的字符串。 **3.replace()** replace()方法用以執行檢索與替換操作。其中第一個參數是一個正則表達式,第二個參數是要進行替換的字符串。 如果replace()的第一個參數是字符串而不是正則表達式,則replace()將直接搜索這個字符串,而不會像search()一樣首先通過RegExp()將它轉換為正則表達式。 replace方法的第二個參數可以使用美元符號$,用來指代所替換的內容。 $& 指代匹配的子字符串。 ~~~ $` 指代匹配結果前面的文本。 $' 指代匹配結果后面的文本。 $n 指代匹配成功的第n組內容,n是從1開始的自然數。 $$ 指代美元符號$。 ~~~ 比如: ~~~ 'hello world'.replace(/(\w+)\s(\w+)/, '$2 $1') // "world hello" ~~~ replace方法的第二個參數還可以是一個函數,將每一個匹配內容替換為函數返回值。 ~~~ 'abca'.replace(/a/g,function(match){ return match.toUpperCase(); }); // "AbcA" ~~~ replace()方法的第二個參數可以接受多個參數。第一個參數是捕捉到的內容,第二個參數是捕捉到的組匹配(有多少個組匹配,就有多少個對應的參數)。 **4.split()** split()方法用以將調用它的字符串拆分為一個子串組成的數組。 ~~~ '123,456,789'.split(',') //返回["123","456","789"] ~~~ split()方法的參數也可以是一個正則表達式。 ## 12.3 RegExp對象 RegExp()構造函數帶有兩個字符串參數,第二個參數是可選的,它指定正則表達式的修飾符(可傳入修飾符g、i、m或者它們的組合);第一個參數包含正則表達式的主體部分,也就是正則表達式直接量中兩條斜線之間的文本。 ~~~ var regexp = new RegExp('\\d{5}','g') ~~~ 上面的代碼表示會全局的查找5個數字。 ### 12.3.1RegExp對象的屬性 每個RegExp對象都包含5個屬性: ||| |||| | source | 只讀字符串,包含正則表達式的文本| | global | 只讀布爾值,用以說明這個正則表達式是否帶有修飾符g| | ignoreCase | 只讀布爾值,用以說明正則表達式是否帶有修飾符i| | multiline | 只讀布爾值,用以說明正則表達式是否帶有修飾符m| | lastIndex | 可讀寫的整數,如果匹配模式帶有g修飾符,這個屬性存儲在整個字符串中下一次檢索的開始位置。| ### 12.3.2 RegExp的方法 RegExp對象定義了兩個用于執行模式匹配操作的方法。 **1.exec()** 正則對象的exec方法,可以返回匹配結果。如果發現匹配,就返回一個數組,成員是每一個匹配成功的子字符串,否則返回null。 ~~~ /a|b|c/.exec('abc') // ["a"] /a|b|c/.exec('qwe') // null ~~~ **2.test()** 正則對象的test方法返回一個布爾值,表示當前模式是否能匹配參數字符串。 ~~~ var s = /a/g; var a = 'baba'; s.lastIndex //0 s.test(a); //true s.lastIndex; //2 s.test(a); //true ~~~ 注意:如果正則表達式帶有g修飾符,則每一次test方法都從上一次結束的位置開始向后匹配,也可以通過正則對象的lastIndex屬性指定開始搜索的位置。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看