Javascript正则表达式问题

Javascript正则表达式问题,javascript,regex,string,match,Javascript,Regex,String,Match,或者使用这个字符串 str = 'autocomplete=\\\"off\\\" name=\\\"composer_session_id\\\" value=\\\"1557423901\\\" \\\/>\\u003cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"is_explicit_place\\\" id=\\\"u436754_5\\\"'; 我希望str.match()返回composer\u se

或者使用这个字符串

str = 'autocomplete=\\\"off\\\" name=\\\"composer_session_id\\\" value=\\\"1557423901\\\" \\\/>\\u003cinput type=\\\"hidden\\\" autocomplete=\\\"off\\\" name=\\\"is_explicit_place\\\" id=\\\"u436754_5\\\"';
我希望
str.match()
返回
composer\u session\u id
的值,即“1557423901”,并且
id
是显式的,即“u436754\u 5”

如何使用JavaScript
regex.match()或split或其他方法获取“1557423901”和“u436754_5”


注意:保证在每种情况下,
名称
都在
之前。

由于JavaScript没有lookbehind,我编写了这个代码段,它与
'attribute=\\\\\\\\\\\\\\\\'
匹配,然后删除
'attribute=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
部分

session_id\":1557423901,\"include_source\":\"web_composer\",\"allow_cities\":true},\"bootstrapEndpoint\":\"\\\/ajax\\\/places\\\/typeahead.php\"});},\"j4e8191ff7ff1878042874292\":function(){return new Typeahead(JSCC.get('j4e8191ff7ff1878042874291'), {node_id: \"u436754_1\",

享受吧

为什么需要
匹配
?似乎
split
更适合这里,只需在
id=
value=
上进行split就更容易从这个stringsession\u id\:1557423901、\“include\u source\”:“web\u composer\”、\“allow\u cities\”:true}、\“bootstrapEndpoint\”:\“\/ajax\\/places\\\\\\\\\\\/typeahead.php\”;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \(JSCC.get('j4e8191ff7ff1878042874291'),{node_id:\'u436754_1\'我需要session_id和node_id值,分别是1557423901和u436754_1。使用任何函数,我只需要这些值
var matches = str.match(/(?:name|id|value)=\\".*?\\"/g);
for (var key in matches)
    matches[key]=matches[key].replace(/.*?\\"(.*?)\\"/,"$1");