JavaScript で文字列文字を変更する
Muhammad Muzammil Hussain
2023年10月12日
JavaScript には、文字列内の文字を直接変更するための組み込みまたはデフォルトのメソッドはありませんが、 substring()
、split()
、および join()
.
この記事では、さまざまな例を含むデフォルトの文字列メソッドを使用して、文字列の任意の位置で文字を置換または変更するカスタム関数を作成します。
JavaScript で substring()
を使用して文字列の文字を変更する
substring()
メソッドは JavaScript で定義済みのメソッドであり、文字列で使用して、インデックスを使用して文字列の定義済み文字を抽出します。 宣言された完全な文字列から定義されたインデックスを検索し、その部分を最初から最後まで抽出します。
substring()
メソッドでは、元の文字列は変更されません。 新しい文字列を返します。
構文:
let string = 'Hello world!';
let result = string.substring(1, 5); // result will be "ello"
次に、substring()
メソッドを使用して、特定の位置で目的の文字を変更したい文字列を初期化します。 変更したい文字とインデックスを提供する必要があります。
<script>
let string = "Delft stack is the b_st website to learn programming" // here we want to change "_" with "e"
function changeChar() {
let result = setCharOnIndex(string,20,'e');
console.log("Original string : "+string)
console.log("Updated string : "+result)
}
function setCharOnIndex(string,index,char) {
if(index > string.length-1) return string;
return string.substring(0,index) + char + string.substring(index+1);
}
changeChar()
</script>
出力:
"Original string : Delft stack is the b_st website to learn programming"
"Updated string : Delft stack is the best website to learn programming"
コード例の説明:
- 上記の JavaScript ソース コードでスペル ミスを含む文字列を初期化しました。
- 文字列、インデックス、文字を引数として取るカスタム関数
setCharOnIndex()
を宣言しました。 - 指定されたインデックスで、デフォルトの
substring()
メソッドを使用して、渡された文字列を 2つの部分に分割します。 - 次に、渡された文字を間に連結し、文字列を完成させました。
- 結果を確認し、メソッドの動作を区別するために、更新された文字列を表示しました。
setCharOnIndex()
関数を呼び出すchangeChar()
関数を宣言しました。- コンソール ログ ボックスに出力が表示されます。
JavaScript で split()
と join()
を使用して文字列の文字を変更する
JavaScript では、split()
は、宣言された文字列を部分文字列配列に分割する定義済みのメソッドです。 元の文字列は split()
メソッドによって変更されません。 文字列文字の新しい配列を返します。
join()
メソッドは配列から文字列を返します。 元の配列は変更されません。
split()
メソッドを join()
と一緒に文字列に使用して、任意の位置の文字を変更できます。 スペルミスのある文字列を初期化し、任意のインデックスまたは位置で文字を変更するために split()
および join()
メソッドをテストします。
コード例:
<script>
let string = "Delft stack is the b_st website to learn programming"; // here we want to change "_" with "e"
let array = string.split(''); // converting into an array
array[20] = "e"; // added "e" in the place of "_"
let result = array.join(''); // created string again
console.log("Original string : "+string)
console.log("Updated string : "+result)
</script>
出力:
"Original string : Delft stack is the b_st website to learn programming"
"Updated string : Delft stack is the best website to learn programming"
コード例の説明:
- 再度、上記の JavaScript ソース コードでスペル ミスを含む文字列を初期化しました。
split()
メソッド文字列を使用して、文字列を部分文字列配列に分割しました。e
文字をインデックス 20 に割り当て、_
で変更します。- 次に
join()
メソッドを使用して、変更された最終的な配列から文字列を再度生成しました。 - 最後に、更新された文字列を表示して結果を確認し、メソッドの動作を区別しました。
- コンソール ログ ボックスの出力を確認します。