| 
 Как преобразовать строку в массив? Есть входящая строка, представляет собой маску номера телефона: 
+1({/[1-9]/}00) 000 000{/[1-9]/}
Нужно перебрать строку таким образом, чтобы получился массив: ['+', '1', '(', /[1-9]/, /\d/, /\d/, ')', ' ', /\d/, /\d/, /\d/, ' ', /\d/, /\d/, /\d/, /[1-9]/] 0 преобразует в регулярку /\d/ Всё что между символами "{}" сохранял "как есть", но группировал как 1 элемент массива (при этом фигурные скобки не сохраняются). Всё остальное тоже сохранял как есть. Вот что пока есть: 
mask = '+1({/[1-9]/}00) 000 000{/[1-9]/}';
var oldMask = mask.split('');
	newMask = [];
oldMask.forEach(function(char) {
	switch( char ) {
		case '0':
			newMask.push( /\d/ );
			break;
		default:
			newMask.push( char );
	}
});
Проблема именно с парсингом того, что между фигурными скобками. Важно. Маска может быть и совершенно иной, не только номер телефона. | 
| 
 Янковиц, 
<script>
let f = a => /\{[^}]+?\}/.test(a);
let r = a => new RegExp(a.slice(2,-2));
let reg ='+1({/[1-9]/}00) 000 000{/[1-9]/}';
reg = reg.match(/(\{[^}]+?\})|(\+)|([()])|(\d)|(\s+)/g);
reg = reg.map(a => a === '0' ? /\d/ : f(a) ? r(a) :  a)
document.write(reg)
</script>
 | 
| 
 Спасибо, только там могут быть разные маски, не только телефона. А, хотя нет, я правильно понимаю reg.match(/(\{[^}]+?\})|(\+)|([()])|(\d)|(\s+)/g) разбирает любую строку? | 
| 
 Янковиц, а проверить самостоятельно и если это не так, привести примеры, что на в ходе и что на выходе. | 
| 
 Да, вот проверяю, действительно, с входящими данными работает. Спасибо. | 
| 
 Если не затруднит, а возможно эту строку немного проще? reg = reg.map(a => a === '0' ? /\d/ : f(a) ? r(a) : a); Я если честно, не очень понимаю, что в ней происходит :( | 
| 
 Спасибо, разобрался. | 
| 
 | 
| 
 Рони, подскажи, а как изменить регулярку? У меня для маски IP адреса точки вырезает: Вот маска, 000.000.000.000 И вот регулярка возвращает: ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"] Такая же история, если есть другие символы, например: 000.000,000a000 | 
| 
 Янковиц, а что нужно чтоб возвращалось? | 
| Часовой пояс GMT +3, время: 01:15. |