javascript获取两组字符之间的子字符串

时间:2018-04-12 11:31:56

标签: javascript string substring

我有以下字符串:

package="com.test.sample"

如何使用 someExtraStuff.fileExt 部分获得最少的代码?

我应该做indexOf var myString = '<p><i class="someclass"></i><img scr="somesource"/><img class="somefunnyclass" id="{{appName}}someExtraStuff.fileExt"/><span class="someclass"></span></p>'; 然后直到下一个 {{appName}} 吗?

2 个答案:

答案 0 :(得分:2)

您可以搜索模式Rx.Observable .fromPromise(function1()) .filter(data => data) .delayWhen(data => getDelayTime(data.start)) // or .timeout() or .delay .map(data => {Rx.Observable.fromPromise(function2());}) 并获取所有不是引号的字符。然后拿下比赛的第二个元素。

{{appName}}

答案 1 :(得分:2)

您可以使用三种方法执行此操作

// 1选项 对于单match

var regex = /\{\{appName\}\}([^"]+)/;
var myString = '<p class="somefunnyclass" id="{{appName}}someExtraStuff.fileExt"/>';
console.log(myString.match(regex)[1]);

// 2选项 多个matches

var regex = /\{\{appName\}\}([^"]+)/g;
var myString = '<p class="somefunnyclass" id="{{appName}}someExtraStuff.fileExt"/>';
var temp;
var resultArray = [];
while ((temp = regex.exec(myString)) != null) {
    resultArray.push(temp[1]);
}
console.log(resultArray);

// 3选项适用于indexOf

var firstIndex= myString.indexOf("{{appName}}");
var lastIndex =firstIndex+ myString.substring(firstIndex).indexOf('"/>')
var finalString = myString.substring(firstIndex,lastIndex).replace("{{appName}}","");
console.log(finalString);