0

mht (テキスト) ファイルを解析して、特定の行だけを抽出しようとしています。RegExMatch はそれを行うためにうまく機能しています。ただし、ループ内では、文字「E」とそれに続く6桁で構成される7桁の文字列を除いて、これらの特定の行からすべてを取り除きたいと思います。

これが私の最近の失敗した試みです。この道化師は明らかに RegEx をあまり知りません。

ヘルプ?

ありがとう

If RegExmatch(A_LoopReadLine,"E\d\d\d\d\d\d")
    {
    ECode := RegExReplace(A_LoopReadLine, "^[Ed\d\d\d\d\d\d]", "")
    FileAppend, %ECode%., G:\2013.txt
    }
4

1 に答える 1

1

そのはず

 RegExReplace(A_LoopReadLine, "^.*(E\d{6}).*$", "$1")

\d{6}は 6 桁を表します..{}は量指定子です..つまり、{n}前の文字が n 回一致することを意味します

()はグループを表します。そのため、グループ内でキャプチャされたすべてのものを参照できます$n。n はグループ番号です。

于 2013-02-07T07:50:36.020 に答える