|
|
@@ -11,6 +11,9 @@ PaoTin++ © 2020~2023 的所有版权均由担子炮(dzp <danzipao@gmail.com>)
|
|
|
///=== {
|
|
|
// #@ algo.Diff <字符串1> <字符串2>
|
|
|
// 如果两个字符串参数中,其中一个是另一个插入了一个子串的结果,则本函数可计算并返回该子串。
|
|
|
+//
|
|
|
+// EXAMPLE: @algo.Diff{一二三四五六七八;一二三四PaoTin++五六七八}
|
|
|
+// RESULT: PaoTin++
|
|
|
// };
|
|
|
#func {algo.Diff} {
|
|
|
#local str1 {%1};
|
|
|
@@ -57,6 +60,42 @@ PaoTin++ © 2020~2023 的所有版权均由担子炮(dzp <danzipao@gmail.com>)
|
|
|
// 将竖排文字重新排版成横排,方便做匹配。
|
|
|
// 结果是一个列表,其中的每个元素代表一行转换后的文本。
|
|
|
// 为方便计算对齐,其中竖排文字串要求用竖线定出每行的左右边界,且一个汉字必须对应两个空格。
|
|
|
+//
|
|
|
+// EXAMPLE:
|
|
|
+// #nop 需要将每一行竖排文字都拼接到一起,左右两边用竖线定界(重要);
|
|
|
+// #local vert {|谁 纵 千 救 眼 三 将 闲 事 十 银 赵 侠|
|
|
|
+// |能 死 秋 赵 花 杯 炙 过 了 步 鞍 客 |
|
|
|
+// |书 侠 二 挥 耳 吐 啖 信 拂 杀 照 缦 客|
|
|
|
+// |阁 骨 壮 金 热 然 朱 陵 衣 一 白 胡 |
|
|
|
+// |下 香 士 槌 后 诺 亥 饮 去 人 马 缨 行|
|
|
|
+// |, , , , , , , , , , , , |
|
|
|
+// |白 不 洹 邯 意 五 持 脱 深 千 飒 吴 |
|
|
|
+// |首 惭 赫 郸 气 岳 觞 剑 藏 里 沓 钩 |
|
|
|
+// |太 世 大 先 素 倒 劝 膝 身 不 如 霜 |
|
|
|
+// |玄 上 梁 震 霓 为 侯 前 与 留 流 雪 |
|
|
|
+// |经 英 城 惊 生 轻 嬴 横 名 行 星 明 |
|
|
|
+// |。 。 。 。 。 。 。 。 。 。 。 。 |};
|
|
|
+//
|
|
|
+// #local lines {\@algo.ParseVertLayout{$vert}};
|
|
|
+// #local lineNo {};
|
|
|
+// #foreach {*lines[]} {lineNo} {
|
|
|
+// #echo {%s} {$lines[$lineNo]};
|
|
|
+// };
|
|
|
+//
|
|
|
+// OUTPUT:
|
|
|
+// 侠 客 行
|
|
|
+// 赵客缦胡缨,吴钩霜雪明。
|
|
|
+// 银鞍照白马,飒沓如流星。
|
|
|
+// 十步杀一人,千里不留行。
|
|
|
+// 事了拂衣去,深藏身与名。
|
|
|
+// 闲过信陵饮,脱剑膝前横。
|
|
|
+// 将炙啖朱亥,持觞劝侯嬴。
|
|
|
+// 三杯吐然诺,五岳倒为轻。
|
|
|
+// 眼花耳热后,意气素霓生。
|
|
|
+// 救赵挥金槌,邯郸先震惊。
|
|
|
+// 千秋二壮士,洹赫大梁城。
|
|
|
+// 纵死侠骨香,不惭世上英。
|
|
|
+// 谁能书阁下,白首太玄经。
|
|
|
// };
|
|
|
#func {algo.ParseVertLayout} {
|
|
|
#local text {%0};
|