Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 字符串后面有一个正则表达式的多个匹配项_Javascript_Regex - Fatal编程技术网

Javascript 字符串后面有一个正则表达式的多个匹配项

Javascript 字符串后面有一个正则表达式的多个匹配项,javascript,regex,Javascript,Regex,我需要获得多个匹配项(这是最简单的部分),只有在开头有特定文本的情况下 必须在服务器端完成,因此不能使用jQuery 一个例子是:我想在父元素中获取所有匹配的HTML元素。因此,如果我有一个名为“gallery”的父级,其中包含多个“image”元素,我只想获取这些元素 另一个例子是JSON(我不能解析它,所以我需要一个正则表达式)。在JSON的情况下,我有以下几点: { “[数据库角色=库占位符]”:{ “法师/画廊/画廊”:{ “数据”:[{ “完整”:https://google.co

我需要获得多个匹配项(这是最简单的部分),只有在开头有特定文本的情况下

必须在服务器端完成,因此不能使用jQuery

一个例子是:我想在父元素中获取所有匹配的HTML元素。因此,如果我有一个名为“gallery”的父级,其中包含多个“image”元素,我只想获取这些元素


另一个例子是JSON(我不能解析它,所以我需要一个正则表达式)。在JSON的情况下,我有以下几点:

{
“[数据库角色=库占位符]”:{
“法师/画廊/画廊”:{
“数据”:[{
“完整”:https://google.com"
}, {
“完整”:https://google.com"
}, {
“完整”:https://google.com"
}, {
“完整”:https://google.com"
}, {
“完整”:https://google.com"
}, {
“完整”:https://google.com"
}]
}
}
}

我想匹配所有
full
元素(
full):“(.+?)”
),但前提是它们后面紧跟着
数据库角色。
。问题是像:
角色。+?full:“(.+?)”
这样的正则表达式只会匹配第一个元素。这可以通过两个步骤完成。首先匹配整个父元素,然后匹配捕获组中的子元素。例如:

<div class="gallery">\n(.*\n)*<\/div>
\n(.*\n)*
然后,在匹配的结果上类似这样:

<img src="(.*)" \/>


为什么“需要”正则表达式?使用JS或jQuery非常简单(
$(“.gallery-img[src='items'])
)。至于JSON,为什么你不能解析它呢?是的,你需要jquery或cheerio来解析htmlHey,不,我不能使用jquery,因为我是在服务器端而不是客户端解析HTML