2017-06-15 75 views
-1

如果這是我的文字:如何讀取一個字符在多個字符串中的位置?

<textarea readonly id="rightbox" class="rightbox"> 
From: Emailadress 
Sender: Emailadress 
Reply-To: Emailadress 
</textarea> 

我怎麼能讀的emailadress的位置?

我的indexOf

var str = document.getElementById('rightbox').innerHTML; 
var pos = str.indexOf('{Emailadress}'); 

試了一下我只得到1的emailadress的位置。 是否有可能獲得所有職位並將其寫入數組?

+0

'Emailadresse!== Emailadress' –

+0

另外' 'leftbox'!==「rightbox'',但我認爲這是在問題,只是錯字:-) – Capsule

+1

這是在以下問題中已經回答了。請參閱[https://stackoverflow.com/a/40281656/1273550](https://stackoverflow.com/a/40281656/1273550) –

回答

0

第一變化rightbox作爲id代替leftbox,第二使用value代替innerHTML

indexOf()會給你第一個出現的匹配字符串(檢查Emailadresse)。

var str = document.getElementById('rightbox').value; 
 
console.log('Position of Emailadress:'+str.indexOf('{Emailadresse}')); 
 
console.log('Position of Emailadress:'+str.indexOf('Emailadress')); 
 
// to get all occurence of Emailaddress 
 
var regexp = /Emailadress/g; 
 
var key, positions = []; 
 
while ((key = regexp.exec(str)) != null) { 
 
    positions.push(key.index); 
 
} 
 

 
console.log(positions);
<textarea readonly id="rightbox" class="rightbox"> 
 
From: Emailadress 
 
Sender: Emailadress 
 
Reply-To: Emailadress 
 
</textarea>

+0

我認爲問題是:你如何獲得所有職位。但措辭非常糟糕。 – Capsule

+0

是的,我已經更新了我的答案。 –

+0

好的,非常感謝。 –

1
var str = "I learned to play the Ukulele in Lebanen with neel." 
var regex = /ne/gi, result, indices = []; 
while ((result = regex.exec(str))) { 
    indices.push(result.index); 
} 
Answers:indices= 6,37,46 
相關問題