[英]Replacing all occurances of a certain word in a textfile with a different word in Javascript
我正在尝试帮助我的兄弟做 Javascript 作业。 我之前没有在 Javascipt 中编码的经验(除了我最近 2 天学习的内容),但是我对 C 有点熟悉。
所以可能有更好的方法来做到这一点。
然而,任务是获取一个文本文件并找到最常用的单词。
我们已经做到了这一点。 任务的后半部分是取这个词并在它之间添加两个词。 这两个词是“嘿”和“你好”。 并将文本文件中出现的单词“The”的每个实例替换为“HeyTheHello”
因此,无论文本文件中是否有 The,现在都应该是“HeyTheHello”。
这是代码:
'''
let input= document.querySelector('input');
let textarea = document.querySelector('textarea');
input.addEventListener('change', () => {
let files = input.files;
if(files.length == 0) return;
const file = files[0];
let reader = new FileReader();
reader.onload = (e) => {
const file = e.target.result;
// const lines = file.split(" ");
textarea.value= file;
//textarea.value= lines.join('\n');
const words = file.split(" ");
function count(){
const countWords = console.count(words);
return "1" + words;
}
let lines = file.toString();
function commonWord(str){
if (lines.length === 0) {
return null
}
str = str.toLowerCase()
let maxCount = 0
let maxWord = []
str = str.split(" ");
str.forEach(word=>{
let wordValue = str.filter(w => w === word).length
if(wordValue > maxCount){
maxCount = wordValue
maxWord.length = 0
maxWord.push(word)
}
else if(wordValue == maxCount){
maxWord.push(word)
}
})
return maxWord;
//console.log(filtext)
}
'''
这就是我认为可能是一个解决方案:
'''
NewWord = 'Hey' + Word + 'Hello';
for( i = 0, i<Word.length, i++){
if(text[i] == Word) {
text[i] = NewWord;
}
}
return text
'''
我的想法是:
首先,我们创建一个新的字符串变量,其中包含最常用词的修订版本。
然后 for 循环应该遍历整个文本数组(包含所有单词)
并在每次替换单词时,比方说, The 出现在文本文件中的 HeyTheHello 中。
最后这个函数应该返回现在修改过的文本文件。
任何帮助将不胜感激!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.