正则表达式(Regular Expression)是一种文本模式匹配工具,可以用来检查一个字符串是否符合某种模式,或者从一个字符串中提取符合模式的子串。在JavaScript中,正则表达式是通过RegExp对象来表示的。
/abc/
匹配字符串中的 "abc"。/\d{3}-\d{2}-\d{4}/
匹配美国社会安全号码格式。/(abc)\d(efg)/
可以捕获分组中的内容。假设我们有一个URL字符串,我们需要从中提取出域名部分。可以使用以下正则表达式:
const url = "https://www.example.com/path/to/resource?query=param";
const domainRegex = /^(?:https?:\/\/)?(?:[^@\n]+@)?(?:www\.)?([^:\/\n]+)/;
const match = url.match(domainRegex);
if (match) {
const domain = match[1];
console.log(domain); // 输出: example.com
} else {
console.log("No match found");
}
^
表示字符串的开始。(?:https?:\/\/)?
是一个非捕获组,匹配可选的 "http://" 或 "https://"。(?:[^@\n]+@)?
是一个非捕获组,匹配可选的用户名和 "@" 符号(通常用于邮箱地址,但在这里用于URL)。(?:www\.)?
是一个非捕获组,匹配可选的 "www."。([^:\/\n]+)
是一个捕获组,匹配并捕获域名部分,直到遇到冒号、斜杠或换行符。通过上述正则表达式,我们可以有效地从URL中提取出域名部分。
领取专属 10元无门槛券
手把手带您无忧上云