すべての下線を文字列内のスペースに置き換えるフィルターが必要です
string.replace
は、最初の引数として文字列を受け入れるだけでなく、最初の引数として正規表現も受け入れます。 _
正規表現区切り文字内/
とasloは、それに加えてg
修飾子を追加します。 g
はグローバル修飾子と呼ばれ、グローバルに置換を行います。
App.filter('underscoreless', function () {
return function (input) {
return input.replace(/_/g, ' ');
};
});
一般的な置換フィルターの代替品を次に示します
App.filter('strReplace', function () {
return function (input, from, to) {
input = input || '';
from = from || '';
to = to || '';
return input.replace(new RegExp(from, 'g'), to);
};
});
HTMLで次のように使用します。
{{ addText | strReplace:'_':' ' }}
マイナーノート:to
パラメーター内のHTMLタグは、Angularコンテンツセキュリティルールにより、式が失敗します。
場合によっては、split()
関数を使用できます。
。replace関数は正規表現構文に準拠していません(つまり、.replace(/,/g,'\n')
構文)
完全な構文:{{myVar.toString().split(',').join('\n')}}
.toString()
関数は、myVarがTypeScriptでStringとして入力されていない場合に使用します。
この単純な関数はそれを行うことができます:
public getCleanedString(cadena) {
cadena = cadena.replace(/_/g, ' ');
return cadena;
}