选择符
| 字符 | 描述 |
|---|
| | | 或,匹配左右两边任何一个满足就可以 |
\ | 匹配特殊字符。 |
\d | 匹配数字字符。等价于 [0-9] |
\w | 匹配字母、数字、下划线。等价于 [A-Za-z0-9_] |
() | 元字组,(12|34) 表示 12 或 34 是一个整体 |
[] | 元字表,[123456] 或其中一个 |
[^ABC] | 匹配除了 [...] 中字符的所有字符 |
^ | 匹配字符串的开始位置 |
$ | 匹配字符串的结束位置 |
+ | 表示匹配多个 |
let nums = "ceshi2023com10aa15bb21bb23";
console.log(nums.match(/\d/g).join(""));
let hd = "houdunren.com";
console.log(/u/.test(hd));
let reg = new RegExp("u", "g");
console.log(reg.test(hd));
console.log(/[u@]/.test(hd));
let tel = "020-9999999";
console.log(/(010|020)-\d{7,8}/.test(tel));
const num = "12121";
let reg1 = /[123456]/;
console.log(num.match(reg1));
let reg2 = /(12|34)/;
console.log(num.match(reg2));
let price = 23.34;
console.log(/\d+\.\d+/.test(price));
let reg3 = new RegExp("\\d+\\.\\d+");
console.log(reg3.test(price), "\\d+\\.\\d+");
let url = "https://www.houdunren.com";
console.log(/https?:\/\/\w+\.\w+\.\w+/.test(url));
let hd1 = "8bjlk8";
console.log(/^\d$/.test(hd1));
let hd3 = "houdunren 2010";
console.log(hd3.match(/\d+/g));
console.log(hd3.match(/\d/g));
console.log(hd3.match(/\D+/g));
let hd4 = `张三:010-99999999,李四:020-88888888`;
console.log(hd4.match(/\d{3}-\d{7,8}/g));
console.log(hd4.match(/[^-\d:,]+/g));
let con = prompt("请输入要检测的内容,支持正则");
let reg = new RegExp(con, "g");
let div = document.querySelector("div");
div.innerHTML = div.innerHTML.replace(reg, search => {
return `<span style="color:red">${search}</span>`;
});
document.querySelector("[name='user']").addEventListener("keyup", function() {
let flag = this.value.match(/^[a-z]{3,6}$/);
console.log(flag ? "正确" : "失败");
});