Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Подскажите как написать программу (https://javascript.ru/forum/misc/22485-podskazhite-kak-napisat-programmu.html)

JS_Den 21.10.2011 18:15

Подскажите как написать программу
 
Мне задали писать программу, которая должна в введенной строке выбирать все цифры и выводить их на экран. Дело в том, что массивы мы пока не проходили. Помогите плз можно даже просто наводкой!!!

Riim 21.10.2011 18:59

alert('В строке содержатся следующие цифры: ' + (prompt('Введите строку:').match(/\d+/g) || 'нет цифр') + '.');

JS_Den 21.10.2011 19:06

Цитата:

Сообщение от Riim
.match(/\d+/g)

Можешь написать что это такое?
Не совсем понятно
Короче разжевать плз!

Riim 21.10.2011 19:16

Цитата:

Сообщение от JS_Den
Можешь написать что это выполняется?

http://javascript.ru/RegExp.
Кстати, программа неверно написана. Цифра - это 0-9, т. е. число 25 - это две цифры, и цифра не может быть отрицательной (т. е. регулярка уже верно написана). Получается так:
alert('В строке содержатся следующие цифры: ' + unique(prompt('Введите строку:').match(/\d/g) || ['нет цифр']) + '.');

unique ищешь в интернете по "javascript array unique".

Триви 21.10.2011 19:34

Если цифры, то: /\d{1}/g

Riim 21.10.2011 19:37

Цитата:

Сообщение от Триви
Если цифры, то: /\d{1}/g

ага, поторопился, поправил выше.

JS_Den 21.10.2011 20:01

Я так понимаю слеши это поиск нужного элемента в строке.
А массив тут надо объявлять?

Триви 21.10.2011 20:29

JS_Den,
Массив явным образом не объявляется, но присутствует.
match возвращает массив совпадений.
Напиши, что прошли то уже.

JS_Den 21.10.2011 20:36

Прошли циклы, ветвление, функции, стандартные функции: eval, parseInt, parseFloat, деление виды; операторы break, continue.

Вообщем вес до объектов и массивов

Kolyaj 21.10.2011 22:23

Цитата:

Сообщение от Триви
/\d{1}/g

А {1} зачем?

Триви 22.10.2011 00:46

Цитата:

Сообщение от Kolyaj (Сообщение 132198)
А {1} зачем?

это было в качестве привлечения внимания к фрагменту регулярки
Riim сразу понял о чем я..

Триви 22.10.2011 08:13

Цитата:

Сообщение от JS_Den (Сообщение 132190)
Прошли циклы, ветвление, функции, стандартные функции: eval, parseInt, parseFloat, деление виды; операторы break, continue.

Вообщем вес до объектов и массивов

Регулярки вряд ли проходили, поэтому тебе не пойдет то, что посоветовали выше.
Вот так как то тебе нужно:

<script type='text/javascript'>
var str = "a1bcd23efg4h5jklmn", arr = str.split(''), newStr = '';
for(var i in arr) newStr += parseInt(arr[i]) ? arr[i] : '';
alert(newStr);
</script>


пи.си. только не понятно как вы могли проходить циклы без массивов? :blink:

9xakep 22.10.2011 21:55

а не легче:
<script>
var str = "123abc"
var a = parseInt(str,10) 
alert(a)
</script>

А..=)Понял в чем у меня ошибка...он возращает цифру до 1ой буквы

alexruban 03.04.2015 11:20

Я уже написал свою первую игру
 
Вот подробная статья об опыты написания своей первой игры.



Часовой пояс GMT +3, время: 04:22.