Home >Web Front-end >Front-end Q&A >How to replace string in javascript
In JavaScript programming, strings are a very common data type, and it is often necessary to perform various operations on strings, such as search, replacement, etc. In string replacement operations, we usually use the replaceAll() method of the String object. This method is used to replace all a certain substring in the string with another substring. The specific usage is as follows:
string.replaceAll(searchValue, replaceValue)
Among them, searchValue is the substring to be replaced, and replaceValue is the substring to be replaced. Here is a simple example:
let str = "JavaScript is a great language"; let newStr = str.replaceAll("JavaScript", "Java"); console.log(newStr); // 输出:"Java is a great language"
In some cases, we may need to cancel the string replacement operation. For example, in a document, we need to replace all "JavaScript" with "Java", but if the word "Java" originally exists in this document, then when replacing "JavaScript", "Java" will also be replaced. , which is obviously not the result we want. Let's introduce several methods to cancel the string replacement operation.
This method is relatively simple. We can store all the content to be replaced in an array and then replace it one by one. If If it is found that the replacement result is the same as a certain content in the array, the replacement operation will be cancelled. The following is a sample code:
let str = "JavaScript is a great language, and Java is also great"; let replaceArr = ["JavaScript", "Java"] let newStr = str; for(let i=0;i<replaceArr.length;i++){ let replaceValue = replaceArr[i]; newStr = newStr.replaceAll(replaceValue, "Java"); if(newStr.includes(replaceValue)){ newStr = str; break; } } console.log(newStr); //输出:"Java is a great language, and Java is also great"
Regular expressions are a tool used to match strings, and they can be used in extremely complex ways. Matches various forms in strings, so regular expressions can be used to filter string replacements. For example, in the above example, we can use the regular expression /\bJavaScript\b/ to match the word "JavaScript" and then replace it. The advantage of this method is that it can match more strings, but it requires a certain basic knowledge of regular expressions. The following is a simple example:
let str = "JavaScript is a great language, and Java is also great"; let regex = /\bJavaScript\b/g; let newStr = str.replace(regex, "Java"); console.log(newStr); //输出:"Java is a great language, and Java is also great"
In the replace() method of the String object, we can use the callback function to compare the results of each match Processed so that further logical judgment, filtering, and replacement can be performed. For example, in the above example, we can determine whether the current matching result is the same as "Java" in the callback function. If it is the same, it will not be replaced, otherwise it will be replaced. The following is a simple example:
let str = "JavaScript is a great language, and Java is also great"; let replaceValue = "Java"; let newStr = str.replace(/\bJavaScript\b/g, function(match){ if(match === replaceValue){ return match; }else{ return replaceValue; } }); console.log(newStr); //输出:"Java is a great language, and Java is also great"
In short, before performing string replacement, you need to consider possible conflicts and restrictions, so as to choose an appropriate method to perform the replacement operation to achieve better results.
The above is the detailed content of How to replace string in javascript. For more information, please follow other related articles on the PHP Chinese website!