Open
Description
遇到的問題: 純粹程式碼寫法問題
在 parseWaterball
(string_utils.js:L155)[https://github.com/robertabcd/PttChrome/blob/88e3562e6536cc0a91dbbb9f65e59036e4b73b79/src/js/string_util.js#L155]
當中的正則表示式
export function parseWaterball(str) {
var regex = new RegExp(/\x1b\[1;33;46m\u2605(\w+)\x1b\[0;1;37;45m (.+) \x1b\[m\x1b\[K/g);
var result = regex.exec(str);
if (result && result.length == 3) {
return { userId: result[1], message: result[2] };
} else {
regex = new RegExp(/\x1b\[24;\d{2}H\x1b\[1;37;45m([^\x1b]+)(?:\x1b\[24;18H)?\x1b\[m/g);
result = regex.exec(str);
if (result && result.length == 2) {
return { message: result[1] };
}
}
return null;
};
其中如果使用了 new RegExp 的話,那應該就不需要外面以 / 包圍了吧?
也就是應該改成
var regex = /\x1b\[24;\d{2}H\x1b\[1;37;45m([^\x1b]+)(?:\x1b\[24;18H)?\x1b\[m/g;
或是
var regex = new RegExp("\x1b\[24;\d{2}H\x1b\[1;37;45m([^\x1b]+)(?:\x1b\[24;18H)?\x1b\[m", "g");
這樣?
Metadata
Metadata
Assignees
Labels
No labels