js正则表达式获取a标签
时间: 2023-12-06 08:33:45 浏览: 27
可以使用正则表达式来获取a标签,具体的正则表达式如下所示:
```javascript
/<a[^>]*href=['"]([^'"]+)['"][^>]*>(.*?)<\/a>/gi
```
其中,`[^>]*`表示匹配除了`>`以外的任意字符,`[^'"]+`表示匹配除了单引号和双引号以外的任意字符,`.*?`表示匹配任意字符,但是尽可能少地匹配。
下面是一个示例代码:
```javascript
const html = '<a href="https://www.baidu.com">百度</a><a href="https://www.google.com">谷歌</a>';
const regex = /<a[^>]*href=['"]([^'"]+)['"][^>]*>(.*?)<\/a>/gi;
let match;
while ((match = regex.exec(html)) !== null) {
console.log(match[1], match[2]);
}
```
输出结果为:
```
https://www.baidu.com 百度
https://www.google.com 谷歌
```
相关问题
js正则表达式匹配富文本
在JavaScript中,可以使用正则表达式来匹配富文本中的内容。一般来说,我们可以使用正则表达式来匹配HTML标签,然后再从中提取出我们需要的内容,例如图片的URL等。下面是一个简单的例子:
```
function getImgUrl(content) {
let matchReg = /<img.*?(?:>|\/>)/gi; // 匹配图片中的img标签
let arr2 = content.match(matchReg); //拿到标签中所有的img
let srcReg = /src=[\'\"]?([^\'\"]*)[\'\"]?/i; // 匹配图片中的src
let imgUrl = "";
if (arr2 != null) {
let src = arr2[0].match(srcReg);
imgUrl = src[1];
}
return imgUrl;
}
```
这个函数可以用来获取富文本中的第一张图片的URL。它首先使用正则表达式匹配所有的img标签,然后从中提取出第一个标签的src属性值作为图片的URL。需要注意的是,这个函数只能获取第一张图片的URL,如果需要获取所有图片的URL,需要对正则表达式进行修改。
<div class="bild-titel">发动机控制单元, 保险丝架 B, 散热器风扇</div> 使用正则表达式获取DIV标签里面的内容
可以使用以下正则表达式获取DIV标签里面的内容:
```
/<div[^>]*>(.*?)<\/div>/s
```
其中,`<div[^>]*>` 匹配 DIV 标签的开头,`<\/div>` 匹配 DIV 标签的结尾,`.*?` 匹配 DIV 标签里面的内容。`/s` 标志表示匹配任意字符,包括换行符。
使用正则表达式时,可以使用 PHP、Python、JavaScript 等语言的正则表达式相关函数进行匹配。以 PHP 为例,可以使用 preg_match 函数进行匹配,示例代码如下:
```php
$pattern = '/<div[^>]*>(.*?)<\/div>/s';
$string = '<div class="bild-titel">发动机控制单元, 保险丝架 B, 散热器风扇</div>';
preg_match($pattern, $string, $matches);
echo $matches[1];
```
输出结果为:
```
发动机控制单元, 保险丝架 B, 散热器风扇
```