繁体   English   中英

在javascript中获取两个字符之间的子串

[英]Get Substring between two characters in javascript

在几天前我问了一个关于在两个字符之间使用Javascript获取数字的问题之后,搜索了SO和其他文章(全部都是静脉内)。 但不幸的是,我只想使用javascript从字符串中获取字符串。 我有这个字符串

var str = 'a:7:{i:0;s:1:"1";i:1;s:12:"John Smith";i:2;s:19:"My Life Begins Here";i:3;s:31:"This is my .Picture.jpg";i:4;s:10:"1988-07-26";}'

和解决方案只从字符串中抓取数字这很好用

str.match(/"\d+"/g).join().replace(/"/g,'');

但是如果我们需要获取子字符串,这不起作用,我尝试从正则表达式中删除\\ d但是这不起作用。

我在做什么错了? 输出可以是这样的

 //An array like this
 array = ['1','John Smith', 'My Life Begins Here', 'This is my .Picture.jpg', '1988-07-26'];

实际上,上面的字符串是存储在MemcacheD中的PHP数组,我在Node.JS中检索它,这就是我不能使用json_encode的原因。 我不擅长正则表达。 所以专家们请展示一些亮点。

像这样? 它仍将与转义的\\“字符打破。

str.match(/".*?"/g).map(function(str) {
  return str.substring(1, str.length - 1);
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM