[英]How to get substring value from main string?
我有类似于这个的字符串。
HTML
var str = "samplestring=:customerid and samplestring1=:dept";
JS
var parts = str.split(':');
var answer = parts;
我想修剪以主字符串中的冒号:
符号开头的子串
但它正在像这样重新调整价值
samplestring=,customerid and samplestring1=,dept
但我想要这样的东西。
customerid,dept
我动态获取主字符串它可能有2个以上的冒号。
我创造了一个小提琴也链接
var str = "samplestring=:customerid and samplestring1=:dept"; alert(str.match(/:(\\w+)/g).map(function(s){return s.substr(1)}).join(","))
你可以试试正则表达式:
var matches = str.match(/=:(\w+)/g);
var answer = [];
if(matches){
matches.forEach(function(s){
answer.push(s.substr(2));
});
}
这是一个单行:
$.map(str.match(/:(\w+)/g), function(e, v) { return e.substr(1); }).join(",")
你可以这样试试
var str = "samplestring=:customerid and samplestring1=:dept and samplestring11=:dept";
var results = [];
var parts = str.split(' and ');
$.each(parts, function( key, value ) {
results.push(value.split(':')[1]);
});
现在, results
数组包含三个值customerid
, dept
和dept
尝试
var str = "samplestring=:customerid and samplestring1=:dept";
var parts = str.split(':');
var dept = parts[2];
var cus_id = parts[1].split(' and ')[0];
alert(cus_id + ", " + dept );
使用这个你会得到o / p,如: customerid,dept
这会给你你需要的东西......
var str = "samplestring=:customerid and samplestring1=:dept";
var parts = str.split(' and ');
var answer = [];
for (var i = 0; i < parts.length; i++) {
answer.push(parts[i].substring(parts[i].indexOf(':')+1));
}
alert(answer);
var str = "samplestring=:customerid and samplestring1=:dept"; alert(str.replace(/[^:]*:(\\w+)/g, ",$1").substr(1))
这里\\S
其中S
是大写是得到不是空格字符,所以它会得到单词,直到第一个空格匹配它,所以它将匹配后面的单词:
直到第一个空格,我们使用/g
不仅匹配fisrt单词和继续在字符串中搜索其他匹配项:
str.match(/:(\S*)/g).map(function(s){return s.substr(1)}).join(",")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.