青空文庫形式のルビ表現って『小説家になろう』みたいなサイトでも使われているのよね。ひとつの定番と言えるわ。
HTMLのルビタグ(rubyタグ)を、この形式に変更してみましょう。
正規表現(System.Text.RegularExpressions)を使うわ。
using System.Text.RegularExpressions; : : : /// <summary> /// 雑多なタグを削除する。 /// </summary> /// <param name="dx"></param> /// <returns></returns> static string tagRemover(string dx) { string r = dx; r = Regex.Replace(r, @"(<[^>]+>)", ""); return (r); } /// <summary> /// HTMLのRubyタグを青空文庫形式のルビつきテキストに直す。 /// </summary> /// <param name="q">入力値</param> /// <param name="ff">先頭に「|」をつけるかどうか。</param> /// <returns>補正後のカッコつきテキスト</returns> static string cnvRuby(string q,Boolean ff) { string sep = "|"; if (ff == false) { sep = ""; } string r = Regex.Replace(q, @"<ruby>", sep, RegexOptions.IgnoreCase); r = tagRemover(r); return (r); } static void Main(string[] args) { string r = cnvRuby("<ruby><rb>残念</rb><rp>(</rp><rt>ざんねん</rt><rp>)</rp></ruby>、それは<ruby><rb>私</rb><rp>(</rp><rt>わたし</rt><rp>)</rp></ruby>のおいなりさんだ", true); Console.WriteLine(r); Console.ReadLine(); } } }
#ref(): File not found: "rubytag1.png" at page "HTMLのルビタグを青空文庫形式のルビ表記に変更"