|
こんにちは。ユーザーhumです。
正規表現にコメントを付けて、利用したいと考えています。
再現テストのように、同じ正規表現にコメントを付けたら
(?#....)形式は使えて(?#..()..)が使えない理由が分かりません。
調べ方が悪いのかうまく見つけられませんでした。
お教え願えませんでしょうか?
2010/05/17(月)06:42:15 形式を検索、置換したい時の正規表現を
[0-9]{4}\/[0-9]{2}\/[0-9]{2}\([月火水木金土日]\)[0-9]{2}:[0-9]{2}:[0-9]{2}
として、再現テスト
1.(?#....)コメントがあっても無くても検索、置換とも、できるパターン。
[0-9]{4}\/[0-9]{2}\/[0-9]{2}\([月火水木金土日]\)[0-9]{2}:[0-9]{2}:[0-9]{2}
(?#....)[0-9]{4}\/[0-9]{2}\/[0-9]{2}\([月火水木金土日]\)[0-9]{2}:[0-9]{2}:[0
-9]{2}
(?#YYYY/MM/DD W HH:MM:SS)[0-9]{4}\/[0-9]{2}\/[0-9]{2}\([月火水木金土日]\)[0-
9]{2}:[0-9]{2}:[0-9]{2}
## 当該正規表現の行頭にカーソルを置いて検索すると、検索ダイアログでは
## 下検索、上検索で検索文字列を強調するので、式は妥当と思えます。
2.検索、置換時の下検索、上検索、(本文のみ)全置換実行時
「正規表現パターンでのカッコの対応が合ってません。」
となる。(?#..()..)の様にコメント内にかっこ()が入った
時には無効コメントとなるようです。
(?#..()..)[0-9]{4}\/[0-9]{2}\/[0-9]{2}\([月火水木金土日]\)[0-9]{2}:[0-9]{2}:
[0-9]{2}
(?#YYYY/MM/DD(W)HH:MM:SS)[0-9]{4}\/[0-9]{2}\/[0-9]{2}\([月火水木金土日]\)[0-
9]{2}:[0-9]{2}:[0-9]{2}
2.のように、正規表現にコメントを付けて行頭にカーソルを置いて、
置換しようと思い、置換ダイアログで、下検索、上検索、全置換を行うと、
「正規表現パターンでのカッコの対応が合ってません。」
と、おこられます。
正規表現にコメント付ける時には、(?#..()..)の様にコメント内に
かっこ()が入った時に、おこられるのは何の制約でしょうか?
Windows XP Pro SP3
秀丸メール Ver.5.39β3
秀丸エディタ Ver.8.01β5
|
|