Javascript正则表达式提取特定单词后面引号之间的所有字符
我有以下案文:Javascript正则表达式提取特定单词后面引号之间的所有字符,javascript,regex,string,match,Javascript,Regex,String,Match,我有以下案文: 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="
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中的一个变量中,我想提取s.prop42的引号之间的文本,并给出结果:
"username"
我现在拥有的是
var regex = /\?prop.42="([^']+)"/;
var test = data.match(regex);
但它似乎不起作用,有人能帮我吗?用这个:
var myregex = /s\.prop42="([^"]*)"/;
var matchArray = myregex.exec(yourString);
if (matchArray != null) {
thematch = matchArray[1];
}
在中,查看右侧窗格中的捕获组
解释
匹配s\.prop42=“
(但我们不会检索它)s.prop42=“
中的括号将非([^“]*)
的任何字符捕获到组1:这是我们想要的“
- 代码获取组1捕获
- 无法对上述答案发表评论,但我认为正则表达式与。*类似:
var myregex = /s\.prop42="(.*)"/;
var matchArray = myregex.exec(yourString);
if (matchArray != null) {
thematch = matchArray[1];
}
你为什么要尝试匹配一个字面上的问号?为什么不允许在以双引号结尾的字符串中使用单引号?不客气,谢谢您的绿色复选标记!:)