正規表示式學習

2021-09-29 14:36:14 字數 1427 閱讀 2078

原文:

1、有字串"sjdkfljsdlkfsdkfsdklf",請使用效率最高的方法讀取次數最多的字元,返回這個字元和個數

var str = "sjdkfljsdlkfsdkfsdklf";

//將字串按字母順序公升序排序

var new_str = str.split("").sort().join("");

var num = -1; //

定義乙個變數儲存最多字元的次數

varchar = null;//

定義乙個變數儲存最多出現的字元

var reg = /(\w)\1 /g; //

當連續的字元相同時,\1 會讓正規表示式不斷的去擷取,直到遇到不同的字元,然後把相同的字串傳遞給替換函式的第乙個引數,把單個字元值傳給第二個引數

new_str.replace(reg,function

(param1, param2)

});console.log(

char " : " num); //

說明:該正規表示式主要考察了\1 的語法。

2、將字串grandfather 轉換成grand_father;  grandfathermom 轉換成grand_father_mom

var result = "grandfather ".replace(/[a-z]/g, function($1));

console.log(result);

//輸出grand_father

var result2 = "grandfathermom".replace(/[a-z]/g, function($1));

console.log(result2);

//輸出grand_father_mom

/*

*字元的一些替換操作效率最高的是使用正規表示式,str.replace是我們做該類操作會用到的非常重要的函式,因此,深入了解replace的特性會對我們有很大幫助:

*replace使用總結如下:

* * 字元替換,需要使用replace函式

* a.當replace函式第二引數是函式時

* 1).則該函式的第乙個引數即是正規表示式匹配到的值(當正規表示式帶有g這個屬性時,則第二個函式會根據找到的結果迴圈遍歷)

* 2).函式返回值會替換到新的字串中

* 3).返回的字串並不修改原始字串

* 4).第二個函式會有三個引數,第乙個引數是匹配內容本身,第二個引數是匹配內容在字串中的位置,第三個引數是原始字串

* * b.當replace第二個引數是字串時,只有使用$1,$2才能訪問正則裡的子表示式內容

* * 了解了以上細節,相信我們在去做相關字串替換操作時會好處理很多了。

*/

正規表示式學習

概念 正規表示式,就是用某種模式去匹配一類字串的乙個公式。基礎 下表列出了所有的元字元和對它們的乙個簡短的描述。簡單例子 vi 命令作用 s g 把乙個或者多個空格替換為乙個空格 s 去掉行尾的所有空格 s 在每一行頭上加入乙個空格 s 0 9 0 9 去掉行首的所有數字字元 s b aeio g ...

正規表示式學習

1.元字元 1 匹配任何單個字元 2 匹配括號中的任何乙個字元 可以再括號中使用連字元 來指定子都的區間來簡化表示,如a 0123456789 c等價於a 0 9 c 3 將 之間括起來的表示式定義為 組 4 將兩個匹配條件進行邏輯 或 運算 z f ood則匹配 zood 或 food 5 匹配0...

正規表示式學習

只是點皮毛,先湊合用著了,順便鄙視一下sqlserver,居然不支援正則。b 元字元,代表著單詞的開頭或結尾,也就是單詞的分界處。d 數字 s 任意的空白符,包括空格,製表符 tab 換行符,中文全形空格等 w 字母或數字或下劃線或漢字等 匹配字串的開始 匹配字串的結束 轉義符 除換行符以外的任意字...