2009-04-24 10 views

答えて

21
var newString=oldString.replace(/\n/g,"<br />"); 
+2

-1:複数の改行がある場合、私は「\ n」は私が使用されるものの場合には、動作しませんでした事例が発生しましたこれは失敗します。 Javascriptでは、/ pattern/gを使用する必要があります。 – eyelidlessness

+2

それは以来修正されました:) –

5

1のようなものを見て、私の結果をしたいと思います。私はちょうどその文字列を定義するそのスタイルを使用すると、そこに追加の空白のヒープがあることを指摘したいと思います。改行の置き換え簡単な操作を行うと、実際にあなたにこの文字列を与える:

"This is man.<br />  Man like dog." 

基本的な解決策は、あなた置き換える機能変更することです:

newString = oldString.replace(/\n\s*/g, "<br />"); 

またはより良い(私見)を、このようなあなたの文字列を定義します:

var a = "This is man.\n" 
     + "Man like dog." 
; 

は、それはそれはあなたが簡単にコメントを追加することができ、あなたはまだあなたの変数に追加された余分なオーバーヘッドなしに素敵なインデントを得ることができることを意味し、プラス:

var a = "This is man.\n" // this is the first line. 
     + "Man like dog." // and woo a comment here too 
; 
+0

Click Upvoteの答えに対する私のコメントを参照してください。 – eyelidlessness

+2

@click、upvote +1あなたの答えをアップアップしたので+1アップしました。 – nickf

+0

これは楽しい!!!! 1' – nickf

10

を完了することが:

someString.replace(/\n/g,'<br />') 
      .replace(/\r/g,'<br />') 
      .replace(/\r\n/g,'<br />'); 
+6

str.replace(/ \ r \ n?/ g、 '
').replace(/ \ n/g、 '
'); が

eyelidlessness

+1

@eyelidlessnessに\ r \ nを変換しないようにするには(面倒、eyelidlessnessでなければなりません):さて、someString.replaceに定住しましょう|その後、(/ \ nは\ rをする\ nを/ gで、 '
'?)。 – KooiInc