小丑试图用RegEx清理一个字符串

时间:2013-02-07 07:47:30

标签: regex autohotkey

我正在尝试解析mht(文本)文件并仅提取某些行。 RegExMatch工作得很好。 但是,在我的循环中,我想从那些特定的行中除去一切,除了7位数字的字符串,其中包含字母“E”后跟6位数字。

这是我最近的失败尝试。 这个小丑显然不太了解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
    }

1 个答案:

答案 0 :(得分:1)

应该是

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

\d{6}代表6位数。{}是一个量词。所以{n}表示匹配前一个字符n次

()表示一个组...因此,在组中捕获的所有内容都可以通过$n引用,其中n是组号。