カレンダーの色分けを正規表現で

[9055]カレンダーの色分けを正規表現で 投稿者:迷人 投稿日:2016/11/28 11:35:01
よろしくお願いします。
内容は表題の通りで、黒(平日)青(土曜)赤(日曜)の3色の文字スタイルを準備し
文字フレームに数字を流し込んだら自動的に色分けをしてくれる正規表現に悩んでいます。
祝日は不規則になるので、あとで手作業で設定することにします。

2017年1月を例にすると、1月1日が赤で、その後8日、15日…となります。
1月7日、14日…が青。それ以外は黒です。
文字の基本色を黒にし、日曜日と土曜日を色分けします。

まず、タブ区切りのテキストを流し込みます。
[tab]1[tab]2[tab]3[tab]4[tab]5[tab]6[tab]7[cr]
[tab]8[tab]9[tab]10[tab]11[tab]12[tab]13[tab]14[cr]
[tab]15[tab]16…
まず日曜日ですが ^\t\d+ で合っていると思います。実際正しく機能しています。
私が手こずっているのは土曜日です。ここを「強制改行」「改段」「任意の改行」など
あれこれ試してドツボにはまってしまいました。

今のところ \t\d+\r としていますが、これでは月末日が土曜日に来た時に青になりません。
無意味な改行コードを入れれば青になりますが、文字フレームを大きく取らないと
オーバーセットテキストになりますし、できればもっとスマートな方法を知りたいです。

\rではなく「段落の終わり」にすると31日が火曜日でも青になってしまいます。

上で[cr]としましたが私が改行改段について理解が足りないのが原因かもしれません。
ある程度まで自動処理で済ませ、部分的に手作業で補うことも考えてはいますが…
どうかご教示いただければ幸いです。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)

このページをシェア