Неспособность регулярного выражения типаJavascript

Форум по Javascript
Anonymous
Неспособность регулярного выражения типа

Сообщение Anonymous »

У меня есть эта функция в моем TS: < /p>

Код: Выделить всё

export const parseCode = (code: string, name: string = 'master'): { snippet: string; conf: ProfileSettings } => {

console.log(name);
console.log(code);
console.log(String.raw`# ${name}\n([\s\S]+?)\n\n`);
const match = new RegExp(String.raw`# ${name}\n([\s\S]+?)\n\n`, 'g').exec(code);
console.log('match');
console.log(match);
if (!match) {
throw new Error(`parseProfile: profile ${name} not found`);
}
return { match };
};
< /code>
Консоль идет: < /p>
master

defaults nosave
Затем идет код string:
# version
# Betaflight / SPEEDYBEEF405V3 (SBF4) 4.3.2 Apr 7 2023 / 03:15:27 (f156481e9) MSP API: 1.44

# start the command batch
batch start

# master
set gyro_lpf1_static_hz = 0
set gyro_lpf2_static_hz = 300
set dyn_notch_q = 500
set dyn_notch_min_hz = 100
set dyn_notch_max_hz = 500
set gyro_lpf1_dyn_min_hz = 0
set gyro_lpf1_dyn_max_hz = 400
set mag_hardware = NONE
set rc_smoothing_auto_factor = 35

# osd
set osd_vbat_pos = 471
set osd_rssi_pos = 449
< /code>
, а затем остальная часть консоли.logs: < /p>
# master\n([\s\S]+?)\n\n

match

null

Uncaught Error: parseCode: profile master not found
< /code>
regexp успешна как в консоли, так и в Regexp101. Однако выполнение резервуара все время терпит неудачу. Чего мне здесь не хватает?

Подробнее здесь: https://stackoverflow.com/questions/794 ... onsistency

Вернуться в «Javascript»