2017-06-20 12 views
0

文字列データに改行または '\ n'が含まれている部分文字列を切り捨てる必要があります。Javascript:改行または ' n'を含むメイン文字列から部分文字列を取得

var mainString = "HERE IS THE BEGIN OF LINE 
PRINT HERE IS END OF LINE"; 

私が試した、それ以下のコードを見つけてください:

<!DOCTYPE html> 
 
<html> 
 
<body> 
 

 
<p>Click the button</p> 
 

 
<button onclick="myFunction()">Try it</button> 
 

 
<p id="demo"></p> 
 

 
<script> 
 
function myFunction() { 
 
    var mainString = "HERE IS THE BEGIN 
 
OF LINE PRINT HERE IS END OF LINE"; 
 
    
 
    var n = mainString.indexOf("OF LINE"); 
 
\t var str = "OF LINE"; 
 
\t var result = mainString.substr(n + str.length); 
 
    document.getElementById("demo").innerHTML = result; 
 
} 
 
</script> 
 
</body> 
 
</html>

を私はテキストエリアからの入力としてデータを取得した場合、それはバッククォートのアイデアを実現することができますか?そうでない場合は、代替ソリューションがありますか?助けてください!前もって感謝します。

答えて

1

ヘッドラインが正しくない、問題がsubstr()またはindexOf()メソッドでないか、またはmainStringに改行が含まれている。問題は、実際の改行を含む文字列リテラル('または"を使用)が無効な構文であることです。

var mainString = "HERE IS THE BEGIN\n OF LINE PRINT HERE IS END OF LINE"; 

またはES6の構文はあなたのためのオプションがある場合は、ことができます代わりにリテラルテンプレートを使用することができます。

はあなたがいずれかの実際の改行の代わりにリテラルあなたの文字列で \nを使用することができ、これを解決するために、実際の改行:

var mainString = `HERE IS THE BEGIN 
OF LINE PRINT HERE IS END OF LINE`; 
+0

私はES6の構文を使って試してみました。ありがとうございました! – AngularDoubts

関連する問題