austere 发表于 2020-5-13 00:30:59

求一个正则提取


Microsoft DiskPart 版本 10.0.14393.0

Copyright (C) 1999-2013 Microsoft Corporation.
在计算机上: austere

卷 ###      LTR标签         FS   类型      大小   状态       信息
---------------------------------------------------------------
卷   0   C                NTFS   磁盘分区          50 GB正常         启动      
卷   1   D                NTFS   磁盘分区          80 GB正常         页面文件   
卷   2   E                NTFS   磁盘分区         108 GB正常               
卷   3                      FAT    磁盘分区          98 MB正常         系统      
卷   4   F   maxpe      NTFS   可移动          112 GB正常               
         
文本文件如上,求正则提取带 maxpe 这个关键字的整行,谢谢

白嫖之黑 发表于 2020-5-13 03:44:21

.*?maxpe.*

zghwelcome 发表于 2020-5-13 07:34:31


#include <array.au3>
Local $sSource = 'Microsoft DiskPart 版本 10.0.14393.0' & @CRLF & _
                'Copyright (C) 1999-2013 Microsoft Corporation.' & @CRLF & _
                '在计算机上: austere' & @CRLF & _
                @CRLF & _
                '卷 ###      LTR标签         FS   类型      大小   状态       信息' & @CRLF & _
                '---------------------------------------------------------------' & @CRLF & _
                '卷   0   C                NTFS   磁盘分区          50 GB正常         启动   ' & @CRLF & _
                '卷   1   D                NTFS   磁盘分区          80 GB正常         页面文件' & @CRLF & _
                '卷   2   E                NTFS   磁盘分区         108 GB正常         ' & @CRLF & _
                '卷   3                      FAT    磁盘分区          98 MB正常         系统      ' & @CRLF & _
                '卷   4   F   maxpe      NTFS   可移动          112 GB正常 '

Local $sNewStr = StringRegExpReplace($sSource,'(?im)^(?:(?!maxpe).)*$\v*','')
MsgBox(0,'正则替换结果',$sNewStr)


Local $aAry = StringRegExp($sSource,'(?im).*?maxpe.*',3)
If Not @error Then _ArrayDisplay($aAry,'匹配结果')

afan 发表于 2020-5-13 08:16:51


Highlight code by AuREHelper
(?mi)^.+maxpe.+

cxlater 发表于 2020-5-14 11:36:19

(?pattern)是啥意思?
页: [1]
查看完整版本: 求一个正则提取