Найти слова в тексте у которых первая и последняя буквы совпадают
Помогите пожалуйста, уже замучился . Пытался сначала решить задачу сам, но никак не выходит. Точнее выходит но не до конца. Программа работает только если я введу с клавиатуры одно слово, а с текстами не работает. Объясните ,пожалуйста ,что не так.Как сделать чтобы программа работала с текстом. Вот код:
var text;
text=prompt("enter a text");
for(var i=0;i<text.length;i++){
if(text.charAt(i)===text.charAt(text.length-1)){
document.write("the first and the last letters are the same");
}
else {
document.write("the first and the last letters are not the same");
}
break; }
|
Alex961,
разбить текст на слова наверно нужно сначала, потом отфильтровать, затем вывести (желательно без всяких document.write) |
Спасибо большое за ответ. Очень помогло. Вот только вопрос, а почему желательно без document.write? Я просто пока новичок.
|
Alex961,
потому что сотрёт страницу если использовать в скриптах после загрузки страницы (в данном случае не критично) |
Благодарю...Иногда ответ лежит на поверхности, но я почему-то его не замечаю...:(
|
Alex961,
:)
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
span{
background-image: -webkit-gradient(linear, left, right, color-stop(0, #FFD700), color-stop(1, #FF0000));
background-image: -o-linear-gradient(left, #FFD700, #FF0000);
background-image: -moz-linear-gradient(left, #FFD700, #FF0000);
background-image: -webkit-linear-gradient(left, #FFD700, #FF0000);
background-image: linear-gradient(to right, #FFD700, #FF0000);
font-size: 24px;
font-weight: bold;
color: #FFFFFF;
padding: 6px 4px;
border-radius: 4px;
margin: 5px;
}
</style>
</head>
<body>
<script>
var text=prompt("enter a text")
.split(/\s+/)
.filter(function(word) {
return word && word.charAt(0)===word.charAt(word.length-1)
}).map(function(word) {
return '<span>'+word+'<\/span>'
});
text.forEach(function(word, i ) {
document.body.children[i].insertAdjacentHTML("beforeBegin", word);
})
</script>
</body>
</html>
|
Круууто как ... А мне еще пока учиться и учиться...Спасибо вам за помощь..:thanks:
|
Alex961,
не очень :) пришлось 35 строку поправить чтоб переменную text сохранить, если не нужна то var text= в прежнем варианте лишнее.
prompt("enter a text")
.split(/\s+/)
.filter(function(word) {
return word && word.charAt(0)===word.charAt(word.length-1)
}).map(function(word) {
return '<span>'+word+'<\/span>'
}).forEach(function(word, i ) {
document.body.children[i].insertAdjacentHTML("beforeBegin", word);
})
|
| Часовой пояс GMT +3, время: 23:17. |