Как объединить две строки и исключить возможное повторяющееся предложение? ⇐ Javascript
Как объединить две строки и исключить возможное повторяющееся предложение?
Я работаю над модулем преобразования речи в текст, и довольно часто мы имеем следующий сценарий:
var str1 = "Это было здорово, наконец-то у меня появилось время" var str2 = "у меня было время расслабиться и заняться чтением." Мне нужна функция, которая будет проходить через str1 назад и определять, есть ли в ней дублированное предложение из str2, чтобы объединить его, не повторяя, в краткую финальную фразу, например:
var result = "Это было здорово, у меня наконец-то появилось время расслабиться и заняться чтением." Это моя попытка:
function formPhrase(str1, str2) { const word1 = str1.split(' '); const word2 = str2.split(' '); const uniqueWords = []; for (константное слово слов1) { если (!uniqueWords.includes(слово)) { uniqueWords.push(слово); } } for (константное слово слов2) { если (!uniqueWords.includes(слово)) { uniqueWords.push(слово); } } const result = uniqueWords.join(' '); вернуть результат; } var str1 = "Это было здорово, у меня наконец-то появилось время" var str2 = "у меня было время расслабиться и заняться чтением." console.log(formPhrase(str1, str2))
Это работает для str1 и str2, но если в объединенной области есть слова, которые также включены в другие части str1 и < code>str2, произойдет ошибка, пример: этот код преобразует это и преобразует эту строку.
Я работаю над модулем преобразования речи в текст, и довольно часто мы имеем следующий сценарий:
var str1 = "Это было здорово, наконец-то у меня появилось время" var str2 = "у меня было время расслабиться и заняться чтением." Мне нужна функция, которая будет проходить через str1 назад и определять, есть ли в ней дублированное предложение из str2, чтобы объединить его, не повторяя, в краткую финальную фразу, например:
var result = "Это было здорово, у меня наконец-то появилось время расслабиться и заняться чтением." Это моя попытка:
function formPhrase(str1, str2) { const word1 = str1.split(' '); const word2 = str2.split(' '); const uniqueWords = []; for (константное слово слов1) { если (!uniqueWords.includes(слово)) { uniqueWords.push(слово); } } for (константное слово слов2) { если (!uniqueWords.includes(слово)) { uniqueWords.push(слово); } } const result = uniqueWords.join(' '); вернуть результат; } var str1 = "Это было здорово, у меня наконец-то появилось время" var str2 = "у меня было время расслабиться и заняться чтением." console.log(formPhrase(str1, str2))
Это работает для str1 и str2, но если в объединенной области есть слова, которые также включены в другие части str1 и < code>str2, произойдет ошибка, пример: этот код преобразует это и преобразует эту строку.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение