Javascript 在两个值之间匹配并返回正则表达式
我试图使用正则表达式从字符串中获取值,该值是Javascript 在两个值之间匹配并返回正则表达式,javascript,c#,regex,Javascript,C#,Regex,我试图使用正则表达式从字符串中获取值,该值是tt=“和”& 因此,例如,“tt=”Value“&“我只想从中得到”Value“这个词 到目前为止,我有这样一个:/tt=.&/,它给了我“tt=Value”&,然后,为了得到我想在=上分割匹配的值,并从末尾删除2个字符。但我觉得,这将是一个可怕的方式来做这件事,想看看它是否可以在正则表达式中完成 匹配字符串内部的整个上下文是正确的,但是您希望使用a来匹配/捕获引号之间的值,而不是在=上拆分并删除两个引号字符 var r = 'tt="Value"&
tt=“
和”&
因此,例如,“tt=”Value“&“
我只想从中得到”Value“
这个词
到目前为止,我有这样一个:
/tt=.&/
,它给了我“tt=Value”&
,然后,为了得到我想在=
上分割匹配的值,并从末尾删除2个字符。但我觉得,这将是一个可怕的方式来做这件事,想看看它是否可以在正则表达式中完成 匹配字符串内部的整个上下文是正确的,但是您希望使用a来匹配/捕获引号之间的值,而不是在=
上拆分并删除两个引号字符
var r = 'tt="Value"&'.match(/tt="([^"]*)"/)[1];
if (r)
console.log(r); //=> "Value"
我知道这不是你想要的答案,因为它不涉及正则表达式,但这是我通常的做法
strvariable = strvariable.Remove(0,strvariable.IndexOf("=") + 2);
strvariable = strvariable.Remove(strvariable.IndexOf("\""), strvariable.Length - strvariable.IndexOf("\""));
这会给你你想要的结果,这在这个例子中是有价值的。你可以通过捕获组
tt=([^&]*)和啊,这就是我想的,虽然是+
,应该是*
?我就是这样让它工作的。我可以问一下[1]最后做了什么吗?我以前没见过。它是否省略了最后一个字符?[1]
返回捕获组的匹配,即括号内匹配的结果(…)
和yes*
,因为匹配是通过使用if语句检查的。