JavaScript - 最後の文字を削除する、4つの方法

JavaScriptで文字列の最後の1文字を削除する方法を紹介します。

たとえば、 Hello、World、JavaScript、などの文字列がある場合は、最後の文字 を削除してHello、World、JavaScriptにすることができます。

1. slice() で最後の文字を削除

slice() の Syntax は str.slice(start, end) で、start と end Index を引数として受け取り、start を含めて end を含まない文字列を切り取って返します。

以下のように、 slice(0, -1) または slice(0, length -1) で文字列の最後の文字を切り取ることができます。 end 引数で渡された -1 は、文字列の後で 1 行前の Index を意味します。

const str = "Hello, World, JavaScript,";

let newStr = str.slice(0, -1);
console.log(newStr);

newStr = str.slice(0, str.length - 1);
console.log(newStr);

Output:

Hello, World, JavaScript
Hello, World, JavaScript

2. substring() で最後の文字を削除

substring()slice() に似た関数です。 str.substring(start, end) で start と end Index を引数として受け取り、start を含め、end を含まない文字列を切り捨てて返します。違いは、 substring の場合は end が start より大きくなければならないため、上記のような場合に end に -1 を引数として渡すことはできません。

以下のように substring(0, length - 1) で最後の文字を削除できます。

const str = "Hello, World, JavaScript,";

const newStr = str.substring(0, str.length - 1);
console.log(newStr);

Output:

Hello, World, JavaScript

3. substr() で最後の文字を削除

substr() の Syntax は str.substr(start , length) で、 start Index から length に渡された長さだけ文字列を切り捨てます。

以下のように文字列の長さより1小さい数を長さに渡すと、最後の文字を削除できます。

const str = "Hello, World, JavaScript,";

const newStr = str.substr(0, str.length - 1);
console.log(newStr);

Output:

Hello, World, JavaScript

4. replace() と正規表現で最後の文字を削除

replace() と正規表現を使用して最後の文字を削除できます。 正規表現を使用するときは、 replace(/pattern/flags, string) のように引数を受け取ります。

以下の正規表現パターンを使用すると、最後の , を削除できます。パターンで $は文字列の終わりを意味します。つまり、文字列の真ん中に来る , はパターンと一致せず、文字列の最後の直前に , があるときにパターンが一致して '' に置き換えられます。 (ここで正規表現のフラグは使用していません)このように最後の文字を削除できます。

const str = "Hello, World, JavaScript,";

const newStr = str.replace(/,$/, '');
console.log(newStr);

Output:

Hello, World, JavaScript

ちなみに、正規表現を使うと、以下のように文字列の最後に特定の文字列が来たときに、この文字列を削除できます。

const str = "Hello, World, JavaScript,";

const newStr = str.replace(/Script,$/, '');
console.log(newStr);

Output:

Hello, World, Java

Related Posts

codechachaCopyright ©2019 codechacha