3

「.wpd」を含む任意の行に一致する RegEx を作成しようとしています。その後、空白行 (空白行を含む) に到達するまですべての行に一致します。

これは私が試したことです:

/\v^.*.wpd\_.\{-}^\s*$

\{-}ただし、「改行を含むすべての文字」文字クラスの後の貪欲でない演算子\{-}は機能しないようです。私が使用する場合

/\v^.*.wpd\_.*

これは、「.wpd」を含む次の行と、その後のすべての行に一致します。しかし、 を に変更するとすぐに、*\{-}にも一致しなくなります。

私は何を間違っていますか?ありがとう!

4

4 に答える 4

8

これはうまくいくようです:

/\v^.*\.wpd\_.{-}\n\s*\n
于 2012-09-11T20:12:00.610 に答える
6

正規表現内^でアトム( と同じ$)を使用することはできません。それは前部 (後部) でのみ特別な意味を持ちます。それ以外の場合は、リテラル char と見なされます。perreal's answer に示されているように、正規表現内の改行に一致させるために使用します。\n

于 2012-09-11T20:33:12.700 に答える
1
(?s)[^\n\r]*\.wpd(.*?)\n{2}

(?s) - 行全体を検索するには、「ドットが改行に一致」をオンにします

[^\n\r]* - 行頭から始まり、改行以外のすべてに一致します

.wpd - 「.wpd」に一致

(.*?) - 改行を含め、欲張らずに何でも一致します (前に (?s) をオンにしたため)

\n{2} - ... 行に 2 つの改行が見つかるまで、これは空白行になります

:)

于 2015-12-01T21:51:22.910 に答える