OCRしたテキストを整形
するscript
OCRをかけたとき、不自然な空白が挟まってしまうことがある。それを取り除くためのscript
やること
全角文字の間に挟まっている空白を取り除く
末尾の空白を消す
半角英数で囲まれている空白は無視する
script.jsexport function tidy(text, {removeBracket = false} = {}) {
const tidied = text
.split(/\n\r?|\r?\n|\f/g)
.flatMap(line => /^\s*$/.test(line) ? [] : [
line
.replace(/(?<!\w)\s+(?=\W)/g, '')
.replace(/\s+$/, '')
])
.join('\n');
return removeBracket ? tidied.replace(/\[([^\]]+)\]/g, ' $1 ') : tidied;
}
script.d.tsexport function tidy(text: string, option: {removeBracket: boolean}): string;
その時に使う
jsscrapbox.PopupMenu.addButton({
title: "reverse",
onClick: (text) => text.split("\n").reverse().join("\n"),
});