正規表現を使用して文字列内のコメント行を探したいと思います。私は以下を試みたが、それは最初の後にすべてを与える//
。行末までの正規表現
なぜですか?
program Project1;
uses
RegularExpressions;
var
Text: string;
Pattern: string;
RegEx: TRegEx;
Match: TMatch;
begin
Text := 'Hello' + #13#10
+ '// Test' + #13#10
+ 'Text' + #13#10;
Pattern := '//[^$]*$';
RegEx := TRegEx.Create(Pattern, [roCompiled, roMultiLine]);
Match := RegEx.Match(Text);
if (Match.Success) then
begin
Match.Index; // 8 -> Expected
Match.Length; // 15 -> I would like to have 9
end;
end.
あなたのパターンの始めに改行で '(?m)'とマッチさせることができます。 –
私たちの回答はあなたの問題を解決しましたか? – Allan
私たちが助けることができるものがあると思ったら、私たちの答えの下のコメントを介してお知らせください。 –