具體使用場景
1 以任意長度分割字符創html
var arr = str.split(/\s+/)
2 將三列的表格數據轉換成相應的表格html字符串
(前提將表格字符串經過word轉成‘xx xxx xx;xxx xx xx;xx xx xx;’的格式)正則表達式
var arr = str.split(";"); var text = ""; for (var x in arr) { var arr2 = arr[x].split(/\s+/); var str2 = "<tr><td>" + arr2[0] + "<td><td>" + arr2[1] + "<td><td>" + arr2[2] + "<td><tr>"; text += str2; }
表格例子:segmentfault
3 金額spa
reg = /^([1-9]\d*)(\.\d*)?$/;
4 禁止輸入emoji表情code
let reg = /[^\u0020-\u007E\u00A0-\u00BE\u2E80-\uA4CF\uF900-\uFAFF\uFE30-\uFE4F\uFF00-\uFFEF\u0080-\u009F\u2000-\u201f\u2026\u2022\u20ac\r\n]/g; if (text.match(reg)) { text = text.replace(reg, ''); }
5 身份證號碼htm
/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
6 匹配2-6箇中文blog
/^[\u4E00-\u9FA5]{2,6}$/;
7 不以某個字符串開頭的表示(例如 不以typedef 開頭)ip
/^(?!typedef)/
8 用這個匹配當前文件的全部打的console.log 而後一次性刪除字符串
[\s\S]*?console.log[\s\S]*?;
使用技巧get
1 exec和match的區別
2 match 某個str的時候返回值裏面帶有匹配到的分組,可是若是reg是全局模式,那麼就不會返回匹配到的分組。
3 . 和.?的區別 一個是貪婪和非貪婪匹配的問題
須要瞭解二者的區別能夠看
https://segmentfault.com/a/11...
持續更新 TBC...歡迎補充 歡迎建議 歡迎糾正