JavaScriptで文字列から指定した部分文字列を削除する方法
JavaScriptでは、メインの文字列と削除したい部分文字列(セパレーター)を受け取り、その部分文字列を取り除いた新しい文字列を返す関数を作成できます。ここでは、removeString() という名前の関数を例に、その実装方法を解説します。
たとえば、ハイフン(-)が区切り文字として含まれる次のような文字列を考えてみましょう。
this-is-a-string
この文字列からハイフンをすべて削除したい場合、split() メソッドと join() メソッドを組み合わせることで簡単に実現できます。
実装コード
以下が removeString() 関数の実装例です。
const removeString = (string, separator) => {
// 文字列を区切り文字で分割する
const separatedArray = string.split(separator);
// 分割された配列を空文字で連結して元に戻す
const separatedString = separatedArray.join("");
return separatedString;
}
const str = removeString('this-is-a-sting', '-');
console.log(str);処理の流れ
この関数の仕組みは非常にシンプルです。
- split(separator): 指定した区切り文字を基準に文字列を配列へ分割します。上記の例では、
["this", "is", "a", "sting"]という配列が生成されます。 - join(""): 分割された配列の要素を空文字("")で連結し、区切り文字を含まない1つの文字列を再構築します。
実行結果
このコードをコンソールで実行すると、次の出力が得られます。
thisisastring
このように、split() と join() を組み合わせるだけで、正規表現や replace() を使わずに特定の部分文字列を文字列から簡単に除去できます。なお、複雑なパターンの削除が必要な場合は replace() メソッドを正規表現と併用する方法も検討するとよいでしょう。
-
JavaScriptで文字列からn文字をアルファベット順に削除する方法
問題 今回は、小文字の英字で構成された文字列と数値 num を引数として受け取るJavaScript関数を作成します。この関数の役割は、文字列から num 文字を「アルファベット順」に削除することです。 ここでいう「アルファベット順に削除する」とは、まず a が存在すればすべて取り除き、次に b、続いて c というように、a から z の順番で目的の文字数に達するまで削除を繰り返すことを意味します。 コード例 以下が実際のコードです。 const str = abascus; const num = 4; const removeAlphabetically = (str = , num =
-
JavaScriptで文字列の配列からコメントを削除する方法
この記事では、JavaScriptを使って文字列の配列からコメント部分を削除する方法について解説します。 問題 文字列の配列 arr を第一引数として、特殊文字の配列 starters を第二引数として受け取るJavaScript関数を作成する必要があります。 starters 配列には、コメントの開始となり得る文字が格納されています。作成する関数は、配列 arr を走査し、各文字列に含まれるコメントをすべて削除した結果を返すものとします。 例えば、関数への入力が次のような場合を考えてみましょう。 const arr = [ red, green !blue