婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > javascript的正則表達式學習資料復習

javascript的正則表達式學習資料復習

熱門標簽:山東外呼系統(tǒng)聯(lián)系方式 地圖標注店鋪地圖標注酒店 遼寧秒客來電話機器人 浙江營銷外呼系統(tǒng)有哪些 上海銷售電銷機器人軟件 淄博市張店區(qū)地圖標注 哈爾濱公司外呼系統(tǒng)代理 自己做的電銷機器人 惠安地圖標注
關于反向引用
復制代碼 代碼如下:

// 測試函數
function matchReg(reg, str) {
var result = str.match(reg);
if(result) {
console.dir(result);
} else {
console.log('match failed');
}
}

var reg = /([A-Za-z]{0,6})\1/;
var str = 'AndrewAndrew';
// 測試通過
matchReg(reg, str);

//通過(?:pattern)的方式,不記錄子表達式匹配的內容(本例中為Andrew)
//所以\1對子表達式匹配內容的引用失敗了
//注意:這里強調的是子表達式所匹配的內容,而不是子表達式本身
reg = /(?:[a-zA-Z]{0,6})\1/;
// 測試不通過
matchReg(reg, str);

關于子表達式的定義
var parse_number = /^-?\d+(?:\.\d*)?(?:e[+\-]?\d+)?$/i;
這是一個解析數字的正則表達式,其中的子表達式有(?:\.\d*)和(?:e[+\-]?\d+)
\.和\-分別是對.和-的轉義表達
順便復習下.表示除換行符以外的其他字符
-一般用于[a-zA-Z0-9]表示匹配范圍
如果其中沒?:例如(\.\d*)那么按照先后順序,反向引用的關系如下
\1-->(\.\d*)
\2-->(e[+\-]?\d+)
如果有更多的話,就以此類推\3 \4 \5....
再次強調,引用的是子表達式匹配的內容,是具體的文本
關于正向預查
復制代碼 代碼如下:

var reg = /I like (?=shanghai)/;
var str = 'I like shanghai';
matchReg(reg, str); //測試通過

str = 'I like beijing';
matchReg(reg, str); //不通過

跑下上面的代碼,就馬上理解什么算是正向預查了,如上面的例子,通過(?=pattern)的形式,正則 表達式預測下后面的內容是不是符合要求,如果是那就順利匹配.
相對地,(?!=pattern)的使用意圖正好與(?=pattern)相反,就不復述了
關于貪心和非貪心匹配模式
復制代碼 代碼如下:

// 貪心
var reg = /\d{1,}/;
var str = '1999';
matchReg(reg, str); // result[0]為1999 能多匹配就多匹配

// 非貪心
reg = /\d{1,}?/;
matchReg(reg, str); // result[0]為1 只匹配了一個

從上面的結果很容易看出"貪心"和"非貪心"的含義
pattern?這就表明非貪心匹配模式,一般情況就是貪心的
關于Regexp對象exec函數返回的結果
復制代碼 代碼如下:

// 關于返回結果是個什么
// matchReg函數中console.dir(result)能說明問題,firebug中一看便知
關于string的replace函數
function camelize(str) {
return str.replace(/-(\w)/g, function(inputStr, p1) {
console.log(p1);
return p1.toUpperCase();
});
}
console.log(camelize('background-color'));

function uncamelize(str, sep) {
sep = sep || '-';
return str.replace(/([a-z])([A-Z])/g, function(inputStr, p1, p2) {
console.log('p1:%s, p2:%s', p1, p2);
return p1 + sep + p2;
});
}
console.log(uncamelize('backgroundColor', '-'));

上面兩個例子,主要用于說明replace函數的用法,當然還有search,split等函數可以充分利用正則表達式的優(yōu)勢
關于javascript正則表達式的最佳實踐
就一句話:盡量的精簡,不要復雜,利于讀懂和維護!
您可能感興趣的文章:
  • JavaScript 正則表達式使用詳細參數
  • 正則表達式提取網址、標題、圖片等一例(.Net Asp Javascript/Js)的實現
  • javascript RegExp對象(正則表達式)
  • JavaScript 正則表達式 驗證整數、小數、實數、有效位小數最簡單
  • JavaScript 表單驗證正則表達式大全[推薦]
  • javascript 手機號碼正則表達式驗證函數
  • javascript 獲取url參數的正則表達式(用來獲取某個參數值)
  • javascript常用正則表達式合集
  • JavaScript基于正則表達式的數字判斷函數
  • javascript中使用正則表達式實現刪除字符串中的前后空格
  • javascript正則表達式基礎篇
  • 如何使用JavaScript和正則表達式進行數據驗證
  • 正則表達式語法規(guī)則及在Javascript和C#中的使用方法
  • javascript中正則表達式反向引用示例介紹
  • javascript正則表達式參數/g與/i及/gi的使用指南
  • javascript正則表達式簡介
  • 如何用javascript正則表達式驗證身份證號碼是否合法
  • JavaScript中常用的正則表達式日常整理(全)
  • 學習JavaScript正則表達式

標簽:銅川 長沙 西安 無錫 泰州 重慶 綿陽 宣城

巨人網絡通訊聲明:本文標題《javascript的正則表達式學習資料復習》,本文關鍵詞  javascript,的,正則,表達式,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《javascript的正則表達式學習資料復習》相關的同類信息!
  • 本頁收集關于javascript的正則表達式學習資料復習的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 托克托县| 马边| 塔城市| 福泉市| 曲阜市| 兴山县| 醴陵市| 宁南县| 科技| 巩义市| 泸定县| 城固县| 汤原县| 灌云县| 华宁县| 富蕴县| 毕节市| 湖南省| 九台市| 嘉荫县| 张家港市| 罗甸县| 灵丘县| 湟源县| 铜川市| 玉屏| 汝州市| 新津县| 都江堰市| 民勤县| 海安县| 阿鲁科尔沁旗| 长沙县| 伊川县| 伊春市| 荥经县| 南安市| 桓台县| 手游| 奈曼旗| 华池县|