正規表現で行をまたぐ場合の回避

[8651]正規表現で行をまたぐ場合の回避 投稿者:主水 投稿日:2015/06/27 17:03:13
よろしくお願いします。

画像は、サンプルとしてはまぎらわしいかもしれませんがご了承ください。

「日時」だけをゴシック体にすることを目的としています。
ゴシック体の文字スタイルを作っておき、正規表現で「日時」だけ拾って処理させたとします。
ところがコメ印以後の部分も同様にされてしまいます。

行頭の「日時」のみを正規表現で指定する方法は分かりますが、
そうではなく、画像のように

行をまたぐ場合のみゴシックを適用させない

という指定の仕方はありますでしょうか?
単一行(?s)は改行を含む場合に機能すると私は理解してます(違ってたらご指摘ください)。

attached image
[8652]Re: 正規表現で行をまたぐ場合の回避 投稿者:やも 投稿日:2015/06/27 23:57:25
こういうことではないのかもしれませんが…
サンプルの例だけでしたら、「^日時」だけで目的は達せますが、何か別のパターンを想定しているのでしょうか?
他のサンプルがあるようでしたらご提示願います。

attached image
[8653]Re: 正規表現で行をまたぐ場合の回避 投稿者:やも 投稿日:2015/06/28 00:01:04
こう、でしょうか…(そんなことはないと思いますけども)

attached image
[8656]Re: 正規表現で行をまたぐ場合の回避 投稿者:クリスと修 投稿日:2015/06/29 10:38:00
「テキストボックスの長さの関係で「日」と「時」が分かれてしまった場合は、ゴシックを適用しない」
といった処理をしたい
ということでしょうか?
[8659]Re: 正規表現で行をまたぐ場合の回避 投稿者:主水 投稿日:2015/06/30 13:45:04
やも様
クリスと修様

説明が拙くて失礼しました。
やろうとしてることは、一旦すべての「日時」をゴシックにして、
行を跨ぐ場合は適用させない、つまり、
やもさんの2つめの書き込みと、クリスと修さんの仰ってることです。

「一旦全ての」でなくてもいいのですが、たぶんそのほうが最短距離かなと思った次第です。
どうでしょうか…
[8660]Re: 正規表現で行をまたぐ場合の回避 投稿者:まる4 投稿日:2015/06/30 18:32:58
いったんすべての「日時」を正規表現でゴチックにして、行頭の「時」と行末の「日」を正規表現で明朝に戻せば良いのでは。

ご質問の意味は理解できるような気がするのですが、
意図がいまひとつ不明なので、なかなかぴったりの解決策が……。
[8661]Re: 正規表現で行をまたぐ場合の回避 投稿者:やも 投稿日:2015/06/30 21:30:34
これは「こういうこともできるのかな?」というような実験的なものでしょうか?
*「行をまたぐものに適用させない」という処理が組版として妥当なのかどうか分からないのでちょっと混乱してます。

行を跨ぐ以外に処理対象に共通点はありませんか? 丸々の単語の後にある、とか。
[8663]Re: 正規表現で行をまたぐ場合の回避 投稿者:主水 投稿日:2015/07/06 11:32:30
ありがとうございます。
実験といいますか、私自身も正規表現について未熟なので「こういう処理は出来ないのかな」という疑問もあり質問させていただきました。

後出しで恐縮ですが、約物などの詰めを、文字組みアキ量設定ではなく正規表現の組合せで処理してみたらどうなるだろうという考えが発端です。
そのなかで、ある処理の流れで、行末の場合はその処理をさせないということをさせようとしていました。
ですから組版としては邪道で、難しいというか、本来やるべきではない処理をさせようとしてるのでしょうか。
[8664]Re: 正規表現で行をまたぐ場合の回避 投稿者:やも 投稿日:2015/07/07 12:39:00
使えるかどうかはおいといて、面白い試みですねー
ただ、行を跨いだものを拾う正規表現はInDにはない…かと思います。また行を跨いだ、という条件でスタイルを変えるシチュエーションもちょっと思いつきません。あるのかな?
[8669]Re: 正規表現で行をまたぐ場合の回避 投稿者:主水 投稿日:2015/07/10 17:25:24
>やもさん
そうですか。残念ですが、一人で四苦八苦していたので参考になりました。
やっぱり文字組みアキ量設定かなあ。なかなか思った通りの挙動をしてくれませんが、もっとトライしてみます。
ありがとうございました。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)

このページをシェア