Суть проблемы: есть строка вида
let pattern = '...XX....XX.............X.......';
где вместо точек могут быть любые буквы, в том числе и X. Количество символов вместо точек также может быть абсолютно разным.
Нужно получить символы, исключая все X из начального варианта строки.
Что я делал:
Добавлял к каждому X изначальной строки, невидимый символ U+200D, и затем парсил видоизменённую строку:
regex = new RegExp(this.regex.source + "\u200D", "g"),
val = input.value.replace(regex, ''),
chars = val.split('').filter(char => this.regex.test(char));
Вроде OK, но вариант с лишним символом не подходит.
Возможно ли как-то другим образом пометить X в начальной строке?