匹配并返回两个值之间的正则表达式

时间:2014-10-27 14:16:39

标签: javascript c# regex

我正在尝试使用正则表达式从字符串中获取值,该值是tt=""&

之间的文本值

因此,举例来说,"tt="Value"&"我只想从中获取"Value"这个词。

到目前为止,我有这个:/tt=.*&/给了我"tt=Value"&,然后,获取我想要在=上拆分匹配的值并从结尾删除2个字符。我觉得,这将是一个糟糕的方式,并希望看看它是否可以在正则表达式中完成?

2 个答案:

答案 0 :(得分:2)

您在匹配字符串内部整个上下文的正确轨道上,但是您希望使用capturing group来匹配/捕获引号之间的值,而不是=上的分割必须删除两个引用字符。

var r = 'tt="Value"&'.match(/tt="([^"]*)"/)[1];
if (r)
    console.log(r); //=> "Value"

答案 1 :(得分:0)

我知道这不是你正在寻找的答案,因为它不涉及正则表达式,但它是我通常的方式。

strvariable = strvariable.Remove(0,strvariable.IndexOf("=") + 2);
strvariable = strvariable.Remove(strvariable.IndexOf("\""), strvariable.Length - strvariable.IndexOf("\""));

这将为您提供您正在寻找的结果,在这个实例中是值。