2016-09-14 3 views
0

文字列を渡してpdfに出力するための 'newline'関数が必要です。今までの私の関数は関数を置き換える変数を渡す正規表現javascript

var array = new Array(); 
function newLineFunction_PDF(text) { 
    var arr = text.replace(/.{70}\S*\s+/g, "$&@").split(/\[email protected]/); 
    return arr; 
} 

array = newLineFunction_PDF('some Text'); 

for(var i in array) { 
    print(array[i]); 
} 

です。テキストの長さは70文字までです。最後の単語は、配列にプッシュし、後で新しい行で印刷します。今私は100のような関数に数値を渡したいので、私は行ごとにテキストの最大長を決めることができます。

これまでのところ私が試した:

function newLineFunction_PDF(text, num) { 
    var re = new RegExp(/.{num}\S*\s+/g); 
    var arr = text.replace(re, "$&@").split(/\[email protected]/); 
    return arr; 
} 

が、私は新しい正規表現にエスケープを追加する方法と場所を知りません。

答えて

1

正規表現のパラメータは文字列です:

var re = new RegExp('.{' + num + '}\S*\s+', 'g'); 
+0

それが動作するバックスラッシュをエスケープして:) – moody

関連する問題