Chúng tôi được yêu cầu viết một hàm JavaScript nhận một chuỗi và một mảng chuỗi.
Hàm của chúng ta sẽ trả về một chuỗi mới, trong đó tất cả các lần xuất hiện của từ trong chuỗi hiện diện trong mảng được thay thế bằng một khoảng trắng.
Hàm của chúng ta nên sử dụng phương thức String.prototype.replace () để giải quyết vấn đề này.
Ví dụ
Mã cho điều này sẽ là -
var excludeWords = ["A", "ABOUT", "ABOVE", "ACROSS", "ALL", "ALONG", "AM", "AN", "AND", "ANY", "ASK", "AT", "AWAY", "CAN", "DID", "DIDN'T", "DO", "DON'T", "FOR", "FROM", "HAD", "HAS", "HER", "HIS", "IN", "INTO", "IS", "IT", "NONE", "NOT", "OF", "ON", "One", "OUT", "SO", "SOME", "THAT", "THE", "THEIR", "THERE", "THEY", "THESE", "THIS", "TO", "TWIT", "WAS", "WERE", "WEREN'T", "WHICH", "WILL", "WITH", "WHAT", "WHEN", "WHY"]; var sentence = "The first solution does not work for any UTF-8 alphaben. I have managed to create function which do not use RegExp and use good UTF-8 support in JavaScript engine. The idea is simple if symbol is equal in uppercase and lowercase it is special character. The only exception is made for whitespace."; const removeExcludedWords = (str, words) => { let sentence = ''; const regex = new RegExp(`\\b(${words.join('|')})\\b`, 'gi'); sentence = str.replace(regex, ""); return sentence; }; console.log(removeExcludedWords(sentence, excludeWords));
Đầu ra
Đầu ra trong bảng điều khiển -
first solution does work UTF-8 alphaben. I have managed create function use RegExp use good UTF-8 support JavaScript engine. idea simple if symbol equal uppercase lowercase special character. only exception made whitespace.