正则替换(replace)
注:常规replace方法只会替换一次,需使用正则才能全部替换1
str.replace(new RegExp('abc', 'gi'), 'def') // 将abc字符串全部替换从def字符串,g表示从头到尾扫描,i表示不区分替换字符串的大小写
- 从字符串中截取数字: - 1 - str.replace(/[^0-9]/ig, '') 
- 去除所有空格 - 1 - str.replace(/\s+/g, '') 
- 去掉左空格 - 1 - str.replace(/^\s*/, '') 
- 去掉右空格 - 1 - str.replace(/\s*$/g, '') 
- 去掉左右空格 - 1 - str.replace(/(^\s*)|(\s*$)/g, '') 
正则判断(test)
说明:对于正则判断手机号,有很多通过号段来判断,个人认为这样不是很严谨,号段可能会增加,所以只需判断首位为1且11位即可
- 首位是1且11位的手机号 - 1 - /^1\d{10}$/.test(phone) // 返回true 或 false 
- 首位是1且11位的手机号(去除空格) - 1 - /^1\d{10}$/.test(phone.replace(/(^\s*)|(\s*$)/g, '')) // 返回true 或 false 
- 中国姓名(中文包括·或•) - 1 - /^[\u2E80-\uFE4F]+([·•][\u2E80-\uFE4F]+)*$/.test(str) // 返回true 或 false 
- email - 1 - /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/.test(email) // 返回true 或 false 
- 身份证号 - 1 - /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/.test(id) // 返回true 或 false 
- URL - 1 - /^https?:\/\/(([a-zA-Z0-9_-])+(\.)?)*(:\d+)?(\/((\.)?(\?)?=?&?[a-zA-Z0-9_-](\?)?)*)*$/i.test(url) // 返回true 或 false 
- 邮编 - 1 - /^[1-9]\d{5}(?!\d)$/.test(postcode) // 返回true 或 false 
- 输入的为纯数字 - 1 - /^\d+$/.test(number) // 返回true 或 false 
- 输入n个纯数字 - 1 - /^\d{n}$/.test(number) // 返回true 或 false 
- 输入m到n的纯数字 - 1 - /^\d{m,n}$/.test(number) // 返回true 或 false 
- 纯英文字母 - 1 - /^[a-z]+$/i.test(enCode) // 返回true 或 false 
- 大写应为字母 - 1 - /^[A-Z]+$/.test(enCode) // 返回true 或 false 
- 英文字母或数字组成 - 1 - /^[a-z0-9]+$/i.test(code) // 返回true 或 false 
- 英文字母和数字组合,区分大小写,6~16位 - 1 - /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,16}$/i.test(code) // 返回true 或 false 
- 英文字母、数字和下划线组成 - 1 - /^\w+$/.test(code) // 返回true 或 false 
- 数字和.组成的浮点数 - 1 - /^(([1-9][0-9]*\.[0-9][0-9]*)|([0]\.[0-9][0-9]*)|([1-9][0-9]*)|([0]{1}))$/.test(str) - 可用来检测金额,只能包含数字和.,且不能是00.123这种格式 
- 从UA判断是否为IE浏览器 - 1 - /msie (\d+\.\d+)/i.test(ua) // 返回true 或 false 
- 从UA判断是否为webkit内核 - 1 - /webkit/i.test(ua) // 返回true 或 false 
- 从UA判断是否为chrome内核 - 1 - /chrome\/(\d+\.\d+)/i.test(ua) // 返回true 或 false 
- 从UA判断是否为firefox内核 - 1 - /firefox\/(\d+\.\d+)/i.test(ua) // 返回true 或 false 
- 从UA判断是否为safari浏览器 - 1 - /(\d+\.\d)?(?:\.\d)?\s+safari\/?(\d+\.\d+)?/i.test(ua) // 返回true 或 false 
- 从UA判断是否是微信浏览器 - 1 - ua.indexOf('micromessenger') > -1 
- 从UA判断是否是QQ浏览器 - 1 - ua.indexOf('qq') > -1 
- 正则判断是否是微信浏览器 - 1 - /(micromessenger)\//.test(ua) 
- 正则判断是否是QQ浏览器 - 1 - /(qq)\//.test(ua) 
- 正则判断微信浏览器或QQ浏览器 - 1 - /(micromessenger|qq)\//.test(ua) 
- 从UA判断是否为iPhone - 1 - /iphone/i.test(ua) // 返回true 或 false 
- 从UA判断是否为iPad - 1 - /ipad/i.test(ua) // 返回true 或 false 
- 从UA判断是否为安卓 - 1 - /android/i.test(ua) // 返回true 或 false 
- 从UA判断安卓版本号 - 1 - ua.substr(ua.indexOf('android') + 8, 3) 
- 从appVersion判断iOS版本 - 1 - parseInt(((navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/))[1], 10) 
- 从UA判断是否为移动端 - 1 - /(nokia|iphone|android|ipad|motorola|^mot\-|softbank|foma|docomo|kddi|up\.browser|up\.link|htc|dopod|blazer|netfront|helio|hosin|huawei|novarra|CoolPad|webos|techfaith|palmsource|blackberry|alcatel|amoi|ktouch|nexian|samsung|^sam\-|s[cg]h|^lge|ericsson|philips|sagem|wellcom|bunjalloo|maui|symbian|smartphone|midp|wap|phone|windows ce|iemobile|^spice|^bird|^zte\-|longcos|pantech|gionee|^sie\-|portalmmm|jig\s browser|hiptop|^ucweb|^benq|haier|^lct|opera\s*mobi|opera\*mini|320x320|240x320|176x220)/i