4

Powershell で正規表現を使用しています。キャプチャーしていないグループがありますが、結果にまだ表示されています。

文字列は次のとおりです。

Grid1.Data = [['TRE - Significant Flux','EG Report','w939909','59e8a31f-d9e9-4ebf-a027-929ec62953ac'],['CB - Daily OD Report','EG Report','w9
39909','59e8a31f-d9e9-4ebf-a027-929ec62953ac'],['BC - Balance Transfers Daily - DRAFT','BC - Balance Transfers Daily - DRAFT','w939909','59e8
a31f-d9e9-4ebf-a027-929ec62953ac'],['CB - CL Activity Report','CB - CL Activity Report','w939909','59e8a31f-d9e9-4ebf-a027-929ec62953ac']]

正規表現は次のとおりです。

$regex = "(?:\[').*?(?=')"  

['TRE - Significant Flux

冒頭の「['」を除外する必要があります。一重引用符の末尾にある非キャプチャ グループが機能しています。

4

2 に答える 2

5

後読みアサーションを使用してみてください

$regex = "(?<=\[').*?(?=')"

また:

$regex = "(?:\[\[')(.*?)(?=')"

$yourstring -match $regex

$Matches[1]
于 2013-02-13T20:45:40.027 に答える