0

これらの行を含む HTML ファイルがあります -

<script>PrintFileURL("13572_BranchInformationReport_2012-06-29.xml","13572_BranchInformationReport_2012-06-29.zip",0,"184277","Jun 29  1:30","/icons/default.gif")</script>
<script>PrintFileURL("13572_BranchInformationReport_2012-07-02.zip","13572_BranchInformationReport_2012-07-02.zip",0,"184302","Jul  2  1:30","/icons/default.gif")</script>
<script>PrintFileURL("13572_IndividualInformationReportDelta_2012-06-29_033352.zip","13572_IndividualInformationReportDelta_2012-06-29_033352.zip",0,"53147","Jun 29  3:33","/icons/default.gif")</script>
<script>PrintFileURL("13572_IndividualInformationReportDelta_2012-07-02_033458.zip","13572_IndividualInformationReportDelta_2012-07-02_033458.zip",0,"62719","Jul  2  3:35","/icons/default.gif")</script>
<script>PrintFileURL("13572_IndividualInformationReport_2012-07-01.acc","13572_IndividualInformationReport_2012-07-01.zip",0,"4033364","Jul  1 12:50","/icons/default.gif")</script>

この文字列からファイル名を抽出する必要があります -

13572_個人情報報告デルタ_2012-06-29_033352.zip

13572_個人情報報告デルタ_2012-07-02_033458.zip

13572_支店情報レポート_2012-07-02.zip

13572_BranchInformationReport_2012-07-02.xml

13572_個人情報報告_2012-07-01.acc

現在、次の正規表現コードを使用しています-

 var fileNames = from Match m in Regex.Matches(pageSource, @"[0-9]+_+[A-Za-z]+_+[0-9]+-+[0-9]+-+[0-9]+\.+(acc|zip|app|xml|def|enr|exm|fpr|pnd|trm)")
                        select m.Value;

最後の 3 つのファイルは表示されますが、最初の 2 つのファイルは表示されません。

これらすべてのファイルを抽出する正規表現を 1 つ提供してもらえますか?

前もって感謝します :)

4

3 に答える 3

1

それに追加(_+[0-9]+)?します:

var fileNames = from Match m in Regex.Matches(pageSource, @"[0-9]+_+[A-Za-z]+_+[0-9]+-+[0-9]+-+[0-9]+(_+[0-9]+)?\.+(acc|zip|app|xml|def|enr|exm|fpr|pnd|trm)")

_+[0-9]+これは、ファイル名にオプションの接尾辞がある行にも一致する必要があることを意味します。

于 2012-07-02T08:36:05.837 に答える
0

\d+_\w+_\d+-\d+-\d+(_\d+)?\.+(acc|zip|app|xml|def|enr|exm|fpr|pnd|trm)

于 2012-07-02T08:42:04.897 に答える
0

以下の正規表現を試してください

@"^[^\(]*\(\""([^""]+)\"""

そして使用:

match.Groups[1];
于 2012-07-02T08:44:00.147 に答える