You are not recognized as the original poster of this topic.
var original=[...document.querySelectorAll("h3")].find(x=>x.textContent.toLowerCase()==="original text").nextSibling.textContent.trim(),
newText="",i=0;
[...document.querySelector("div[class='tool__results']").childNodes].filter(x=>x.tagName==="RUBY").forEach(x=>{
let kanji=x.querySelector("RB").innerText,kanjiIndex=original.slice(i).indexOf(kanji)+i,
ruby=x.querySelector("RT").innerText;
if(kanjiIndex===-1||kanji.length===0)console.error(`Index: ${kanjiIndex}, 漢字: ${kanji}`);
newText+=original.slice(i,kanjiIndex)+"["+kanji+"]{"+ruby+"}";
i=kanjiIndex+kanji.length;
});
newText+=original.slice(i); //append the rest…
console.log(newText);
console.log(newText.replace(/\[([^\]]+)\]\{[^}]+\}/gm,"$1") === original ? "Successfully converted." : "There were some mistakes.");