Показать сообщение отдельно
  #2 (permalink)  
Старый 26.04.2013, 10:57
Аватар для rgl
rgl rgl вне форума
Профессор
Отправить личное сообщение для rgl Посмотреть профиль Найти все сообщения от rgl
 
Регистрация: 28.02.2011
Сообщений: 349

Сообщение от dima*** Посмотреть сообщение
Подскажите,пожалуйста,поче му не работает,в этом месте:

var reguha=/([А-Яа-я]+)([А-Яа-я]+|\d+)(\d)([А-Яа-я]+|\d+)/;
if(b1[i][0][k][1]==Number){
b1[i][0][k][l]=b1[i][0][k][l].replace(reguha,'$1,$4,$2,$3');
}
Весь код не читал, только это место.
Но регуха у вас какая-то неправильная. Для начала, первый скобочки (там есть плючик) съедают все доступные буквы, а значит буквы во вторых скобочках бессмысленны, они сматчится никогда не могут.
var reguha=/([А-Яа-я]+)([А-Яа-я]+|\d+)(\d)([А-Яа-я]+|\d+)/;
//          ^ съедают ^ ^ бессм ^


Дальше, оставшаяся часть вторых скобок съедает все доступные цифры, значит третьи скобки сматчится никогда не могут, а значит и все выражение никогда не сматчится:
var reguha=/([А-Яа-я]+)([А-Яа-я]+|\d+)(\d)([А-Яа-я]+|\d+)/;
//                               ^съе^ ^^^
Ответить с цитированием