More ... | 編集履歴:差分記録開始以来の文章を切り抜くモジュールの変更箇所
+ * 文章を切り抜くモジュール + {{{ + /* + p1 文章の開始を示す特徴文 + p2 元の文章が入った変数 + p3 文章の終了を示す特徴文 + p4 何個目を調べるか + + 文字列の中から特定の文字列で囲まれた文字列を切り抜きます。 + instrとstrmidで行っていた作業を自動化しているだけです。 + p4は一定のルールで並べられたデータを整形するときに使います。 + 主に、htmlに対して使うことを想定しています。 + 基本的には0で問題ありません。 + */ + #defcfunc cat str str1 ,str str2 ,str str3,int ct + ct2=ct + 開始文字数 = strlen(str1) + 終了文字数 = strlen(str3) + 開始=str1 + 文字列=str2 + 終了=str3 + 開始in=0 + 終了in=0 + repeat ct2+1 + 開始in = instr(文字列,開始in,開始)+開始文字数+開始in + loop + 終了in = instr(文字列,開始in,終了)+開始in + 最終=strmid(文字列,開始in,終了in-開始in) + return 最終 + + /* + パラメーターはcatと同じ。 + + 特定の文字列を削除します。 + */ + #defcfunc delcat str str1 ,str str2 ,str str3 + 開始文字数 = strlen(str1) + 全体文字数 = strlen(str2) + 終了文字数 = strlen(str3) + 開始=str1 + 最終="" + 文字列=str2 + 終了=str3 + 開始in=0 + repeat + 開始in = instr(文字列,0,開始) + if 開始in!-1:{ + 終了in = instr(文字列,開始in,終了)+開始in + if 終了in!-1:{ + 文字列=""+strmid(文字列,0,開始in)+""+strmid(文字列,終了in+終了文字数,全体文字数)+"" + }else:break + }else:break + loop + return 文字列 + #global + 文字列="HSPとは、ホット スープ スクリプトの、略です。" + mes 文字列 + mes cat("、",文字列,"の、",0) + mes delcat("、",文字列,"の、") + mes delcat("ク",delcat("プ ",delcat(" ス",delcat("ホ",文字列,"ッ")," ス")," プ "),"プ") + }}} |