Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde galera, eu até que me viro um pouco com er, mas pra essa situação eu to me enrolando todo.
Eu preciso pegar um valor que está entre uma sequência de strings. Ex.:
<ErrorCallBackStart><ErrorCallBackEnd>
O original ficaria assim:
<ErrorCallBackStart>Conteúdo que quero pegar<ErrorCallBackEnd>
E nesse caso a string pode se repetir várias vezes.
<ErrorCallBackStart>Conteúdo que quero pegar<ErrorCallBackEnd><ErrorCallBackStart>Conteúdo que quero pegar<ErrorCallBackEnd><ErrorCallBackStart>Conteúdo que quero pegar<ErrorCallBackEnd>
Eu tô quebrando a cabeça mas ainda não consegui, vlw galera.
Eu não gosto muito de usar split, pois ele costuma não funcionar muito bem com o IE.
Vlw.
// note o sinal de mais (+) no final das linhas.
// indica que está concatenando e o valor todo está numa linha só.
var string = '<ErrorCallBackStart>Conteúdo que quero pegar 1<ErrorCallBackEnd>'+
'<ErrorCallBackStart>Conteúdo que quero pegar 2<ErrorCallBackEnd>'+
'<ErrorCallBackStart>Conteúdo que quero pegar 3<ErrorCallBackEnd>';
var m = string.match(/<ErrorCallBackStart>(.*?)<ErrorCallBackEnd>/gi);
if( m && m.length > 0){
for(var i=0; i<m.length; i++){
console.log(m[i]);
}
}
@braços e fique com Deus!
Comece pela forma mais simples e não específica possível e aplique-a à um String.split(), assim.