如何使用 JavaScript 删除字符串中的两个部分?
本教程将教我们如何使用 JavaScript 删除字符串中两个部分之间的文本部分,基本上,我们会得到两个端点,可以是字符串或字符,我们必须删除它们之间的字符串。
在本教程中,我们将使用正则表达式或 JavaScript Regex 来删除两个字符之间的文本。我们将使用 JavaScript 的 replace() 函数。
语法
让我们看看使用 JavaScript Regex 在两个字符或给定字符串的子字符串之间删除字符串部分的语法:
var str; // declaration of the string var final_str = str.replace( / (first_part) .* (second_part)/ , (first_part) + (second_part ));
在上述语法中,我们首先声明了一个我们将要更改的字符串,并且final_str将存储作为最终结果的字符串。我们将使用 JavaScript 正则表达式的replace()方法,在其中传递正则表达式− ‘/ (first_part) .* (second_part)/’。这里first_part可以是字符串或字符。
注意 − 在这里,我们试图在给定字符串中找到“first_part”的第一次出现,然后在给定字符串中找到“second_part”的最后一次出现。然后,如果“first_part”和“second_part”都存在于字符串中,并且它们之间存在一些字符,我们将删除它们。
算法
我们上面已经看到了删除两个字符之间字符串部分的语法,现在我们将一步一步地查看完整的算法:
首先,我们将声明字符串并为其分配一些值。
然后我们将创建一个变量,该变量将存储最终结果的值。
我们将调用 JavaScript 正则表达式方法 replace() 并向其传递正则表达式,但这里有一个问题,即 replace() 函数需要两个参数。
我们将找到包含我们两个起始和结束字符串或字符的正则表达式,这意味着它们也将替换我们需要返回的中间字符串。
我们将第一个和最后一个字符串或字符作为组合字符串传递以替换给定的正则表达式。
通过这种方式,我们可以删除字符串两个部分之间的字符串。
现在,让我们看看基于上述算法的示例:
示例 1
在此示例中,我们将使用两个字符串,并将删除它们之间存在的中间字符串:
<!DOCTYPE html> <html> <body> <script> var str = "ABCDEFGHIJABCDEFGHIJABCDEFGHIJ"; // declaration of the string var final_str = str.replace( /CD.*GH/ , 'CDGH'); document.write("Previous string was: " + str); document.write("<br>Final stirng is: " + final_str); </script> </body> </html>
在上面的示例中,我们删除了“CD”和“GH”之间存在的所有字符。在这里,我们替换了从索引 2(0 为基索引)到索引 27 的字符串,然后将它们替换为“CDGH”以获得最终答案。
示例 2
在此示例中,我们将替换两个字符之间的所有字符,并且我们也将删除这些字符。
<!DOCTYPE html> <html> <body> <script> var str = "AB(CDEFGHIJABCDEFGHIJABCDEFGH)IJ"; // declaration of the string var final_str = str.replace(/ *\([^)]*\) */g, ""); document.write("Previous string was: " + str); document.write("<br>Final reuslt is: " + final_str) </script> </body> </html>
在上面的示例中,我们删除了括号之间存在的所有字符,包括括号本身。
结论
在本教程中,我们学习了如何删除字符串两个部分之间的文本部分,基本上,我们会得到两个端点,可以是字符串或字符,并且我们学习了如何删除它们之间的字符串。我们使用正则表达式或 JavaScript Regex 通过使用 replace() 函数删除两个字符之间的文本。