• ベストアンサー

正規表現について、行中の全角スペースのみ検索

私はフリーソフトで文章を書いているのですが、文の途中で書きかけの部分に全角スペースを入れてそれを目印にしています。その文中の全角スペースのみにマッチする表現を探しています。 現在は [^\s] [^\s] (真ん中に全角スペースを入れています) で凌いでいますが、これだとスペースの周りの文字まで検知されてしまい、若干ですが見えづらいです。 お時間がよろしければ、ご回答お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ki073
  • ベストアンサー率77% (491/634)
回答No.1

正規表現はソフトに依存することが多いのですが、 (?=\S) (?=\S) または \b \b でできそうに思いますがどうでしょうか。

poenta
質問者

お礼

ご回答ありがとうございます。 “(?<=.) ”(最後に全角スペースがあります) で検索することができました。 記載していませんでしたが、使用しているソフトは“Mery”です。

その他の回答 (3)

  • asciiz
  • ベストアンサー率70% (6803/9674)
回答No.4

>文章の最初のスペースまでマッチしてしまうので今回質問をしました。 いえいえ、なるほど、そういうわけですね。 正規表現の一覧を眺めていて思いつきましたが、次のパターンではどうでしょう? 「\> 」 または 「\b 」 「\>」は「単語の終わり」、「\b」は「単語の境界(単語の前にも後ろにもマッチする)」です。 従って上記の表現は「何らかの文字の後ろの全角スペース」という意味になると思います。 改行記号は空白類の一つとみなされるので、単語の境界にはならず、行頭スペースにはマッチしないんじゃないかな…と。

poenta
質問者

お礼

重ね重ねありがとうございました。 ご協力により、なんとか文中のスペースのみの検索をすることができました。

  • asciiz
  • ベストアンサー率70% (6803/9674)
回答No.3

全角スペースが本当に書きかけの部分にしかないなら、 「[ ]」(全角スペースのみ、マルチバイト対応が必要) あるいは正規表現でもなんでもない単純検索 「 」 で検索できそうに思うのですが、うまくいかないんでしょうか…?

poenta
質問者

お礼

ご回答ありがとうございます。 すみませんが説明が不足していました。たしかにその通りなのですが、文章の最初のスペースまでマッチしてしまうので今回質問をしました。 わざわざ回答していたのに申し訳ありません。

  • vaidurya
  • ベストアンサー率45% (2714/5983)
回答No.2

単純問題として 目視しづらい目印より 目視しやすい目印を使うほうがいいですよ。 私がHTMLをよく書いていた頃は 書きかけの所には、行頭に@@@と入れていました。 @を三つ続けるようなことは通常無いので これで充分、検索しやすく、また目視しやすい目印になりました。

poenta
質問者

お礼

ご回答ありがとうございます。 なるほど。万が一にも文章に含まれないような文字を使用するのはいいかもしれませんね。参考にさせていただきます。

関連するQ&A