我有文字:
s.events="event3"
s.pageName="Forum: Index"
s.channel="forum"
s.prop1="Forum: Index"
s.prop2="Index Page"
s.prop36=""
s.prop37=""
s.prop38=""
s.prop39=""
s.prop40="53"
s.prop41="Anonymous"
s.prop42="username"
s.prop43=""
s.prop47=""
s.eVar1="Forum: Index"
s.eVar2="Index Page"
s.eVar36=""
s.eVar37=""
保存在javascript的var中,我想在s.prop42的引号之间提取文本,给我结果:
"username"
我现在拥有的是
var regex = /\?prop.42="([^']+)"/;
var test = data.match(regex);
但它似乎没有用,有人可以帮助我吗?
答案 0 :(得分:2)
使用此:
var myregex = /s\.prop42="([^"]*)"/;
var matchArray = myregex.exec(yourString);
if (matchArray != null) {
thematch = matchArray[1];
}
在the regex demo中,查看右侧窗格中的捕获组 。
<强>解释强>
s\.prop42="
匹配s.prop42="
(但我们无法检索)([^"]*)
中的括号捕获任何不属于{1}的字符组到第1组:这就是我们想要的答案 1 :(得分:0)
无法对上述答案发表评论,但我认为正则表达式更好用。*就像这样:
var myregex = /s\.prop42="(.*)"/;
var matchArray = myregex.exec(yourString);
if (matchArray != null) {
thematch = matchArray[1];
}