考虑这个字符串,
var string = "sometext/#a=some_text/#b=25/moretext";
我想做的是提取“a”和“b”的值(“some_text”和25)
所以基本上我想要做的是"#a="
在下面找到并抓取所有内容/
,然后对 b 做同样的事情。如何实现?此外,我会使用相同的表达式来更改字符串中的值吗?
我用 PHP 做了这件事,但现在我无法为 JavaScript 弄明白。
编辑
这是提取的PHP版本:
$string = "sometext/#a=some_text/#b=25/moretext";
$expr = '@#([a-z]+)=(.+?)/@';
$count = preg_match_all($expr, $string, $matches);
$result = array();
for ($i = 0; $i < $count; $i++) {
$result[$matches[1][$i]] = $matches[2][$i];
}
print_r($result[b]);
(输出将是“some_text”)