|
Как создать двумерный массив с помощью циклов.
Вот текст:
а="Мама мыла раму.Сын пошёл учиться.Щенок весело гавкал." Как создать двумерный массив с помощью циклов.Разделители,сначала-точка,затем-пробел. Должно получиться: a=[ Мама,мыла,раму ] [ Сын,пошёл,учиться ] [ Щенок,весело,гавкал] Решение есть,но нужно чтобы иполучилось b[i][j] c помощью цикла. а="Мама мыла раму.Сын пошёл учиться.Щенок весело гавкал."; pat=/\./;b=a.split(pat);for(i=0;i<b.length;i++){document.w rite(b[i]+'<br>');}reg=/\s/;c=b[0].split(reg);for(i=0;i<c.length;i++){ document.write(c[i]+'<br>');} |
dima***,
Ты понимаешь что в любом случае получишь объект? В js нет двумерных массивов. |
Понятно.А как сделать-то?
|
Цитата:
Для медитации ... <!DOCTYPE HTML> <html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <script> var a = "Мама мыла раму.Сын пошёл учиться.Щенок весело гавкал.", pat = /[^.]+/g, b = a.match(pat); for (var i = 0; i < b.length; i++) { document.write(b[i] + '<br>'); var reg = /\s/; b[i] = b[i].split(reg); for (var j = 0; j < b[i].length; j++) { document.write(b[i][j] + '<br>'); } } a = b; document.write(a) </script> </body> </html> |
Рони-спасибо огромное!!!:)
Целый месяц бился.Что-то похожее делал,но в Adobe Dreamweawer не получалось.Сейчас буду разбираться,где ошибка была. |
Рони,первый раз вижу такую констукцию.Везде пишут for(i=0;i=a.length;i++){for(j=0;j=a.length;j++)}}, т.е. подряд 2 цикла идут.А где можно посмотреть похожий пример не подскажешь?
Ещё раз огромное спасибо. |
Цитата:
|
dima***,для вашего случая достаточно и одного цикла
var a = "Мама мыла раму.Сын пошёл учиться.Щенок весело гавкал.", pat = /[^.]+/g, reg = /\s/, b = a.match(pat); for (var i = 0; i < b.length; i++) { b[i] = b[i].split(reg); } a = b; document.write(a) |
Да,отлично,спасибо!Ещё лучше стало!
Разобрался почему не получалось. b[i] = b[i].split(reg)-вот до этой строки не додумался. |
Или так:
var str = "Мама мыла раму.Сын пошёл учиться.Щенок весело гавкал."; var result = str.split(/\./).map(function(value) { return value.split(/\s/); }); alert(result); Цитата:
|
Часовой пояс GMT +3, время: 08:53. |
|