JavaScriptで文字列の空白を削除する方法
JavaScriptで文字列に含まれる空白文字を削除する方法です。空白には改行文字も含まれます。
(実行結果は見づらいですが、TABの変化を見るためにこういう出力にしています)
const strings = [
' a',
' a ',
' ',
' ',
' ', // 全角スペース.
' あ ', // 前後全角スペース.
'ab c d e\t\tf ', // 全角スペース含む.
' \t', // 全角スペース+TAB.
'N\n',
'\tN\r\n'
];
前後の空白を削除する
string.trim()
を使います。
strings.forEach(str => {
let s = str.trim();
console.log(`"${str}" --> \t"${s}"`);
});
実行結果
" a" --> "a"
" a " --> "a"
" " --> ""
" " --> ""
" " --> ""
" あ " --> "あ"
"ab c d e f " --> "ab c d e f"
" " --> ""
"N
" --> "N"
" N
" --> "N"
先頭にある空白を削除する
string.trimStart()
を使います。
strings.forEach(str => {
let s = str.trimStart();
console.log(`"${str}" --> \t"${s}"`);
});
実行結果
" a" --> "a"
" a " --> "a "
" " --> ""
" " --> ""
" " --> ""
" あ " --> "あ "
"ab c d e f " --> "ab c d e f "
" " --> ""
"N
" --> "N
"
" N
" --> "N
"
末尾にある空白を削除する
string.trimEnd()
を使います。
strings.forEach(str => {
let s = str.trimEnd();
console.log(`"${str}" --> \t"${s}"`);
});
実行結果
" a" --> " a"
" a " --> " a"
" " --> ""
" " --> ""
" " --> ""
" あ " --> " あ"
"ab c d e f " --> "ab c d e f"
" " --> ""
"N
" --> "N"
" N
" --> " N"
文字列内の空白を全て削除する
文字列内の空白を削除したい場合は正規表現を使います。
string.replaceAll(/\s+/g, '');
正規表現\s+
は次のような意味になります。
\s |
空白文字に一致 |
+ |
直前の文字の1文字以上の繰り返しにマッチ |
strings.forEach(str => {
let s = str.replaceAll(/\s+/g, '');
console.log(`"${str}" --> \t"${s}"`);
});
実行結果
" a" --> "a"
" a " --> "a"
" " --> ""
" " --> ""
" " --> ""
" あ " --> "あ"
"ab c d e f " --> "abcdef"
" " --> ""
"N
" --> "N"
" N
" --> "N"