我正在使用下面的power shell脚本
[regex]$filter_match =
@'
(?ms)\s*(BEGIN STEP \d+)\s*
\s*BEGIN ATTRIBUTES\s*
\s*name=Filter\s*
.+?
\s*(END STEP \d+)\s*
'@
[regex]$property_match =
@'
(?ms)\s*(BEGIN PROPERTY 2)\s*
\s*(BEGIN ATTRIBUTES)\s*
.+?
\s*(END ATTRIBUTES)\s*
\s*(END PROPERTY 2)\s*
'@
[regex]$vector_match =
@'
(?ms)\s*(BEGIN VECTOR val_string val_string_pos)\s*
.+?
\s*(END VECTOR)\s*
'@
$text = get-content D:\Work_Directory\Test_Sanjeev_2.pln -Delimiter "0"
$results = $filter_match.Matches($text)
$results2 = $property_match.Matches($results)
$results3 = $vector_match.Matches($results2)
$results3
如何包含条件语句,我想知道vector_match是成功还是失败。我将在两个不同的变量中添加它们,并可以在末尾解析以获取列表。
示例数据:
SAGENT EXPORT FILE
VERSION 18
LOCALE_INFO "1252",".","","-",".".
BEGIN PLAN
BEGIN ATTRIBUTES
name=Test_Sanjeev_2
is_component=0
last_saved_date=2456974,12:42:45.000
i18n=12
END ATTRIBUTES
BEGIN STEP 1
BEGIN ATTRIBUTES
name=Subplan
step_id={266A5A63-1F95-4B8D-A4D5-50C303E63C66}
step_type=11
is_component=0
END ATTRIBUTES
BEGIN PROPERTY 1
BEGIN ATTRIBUTES
name=AllProperties
value_type=1
custom=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=14EDD4F179EB3BD1E97F2A4C14B41708A75EB6CA57C32D31C78DDCCDF1D50152344DA67D4785772CD4820464D7A03607F3460457B612E317F6670335D517443F24A0C31A0F2AE7166 65-1DEE05E0-BA48-11CF-B2C7-00A02448857E
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 1
BEGIN STEP 2
BEGIN ATTRIBUTES
name=Grid
step_id={59EC3F6D-E77F-479F-8C2D-65CE808B6D23}
display_x=546
display_y=108
END ATTRIBUTES
BEGIN STEPTYPE
BEGIN ATTRIBUTES
name=Grid
clsid={4B343B81-BCED-11D0-B0B7-00A0C91FDBFC}
step_type=2
input_count=1
output_count=1
sink=1
source=0
dc_step_type=304
icon_id=0
visibility=IS/C
ui_clsid={fe294e93-d35a-11ce-814a-0020afea3965}
tip_text=Displays results in column format
END ATTRIBUTES
END STEPTYPE
BEGIN PROPERTY 1
BEGIN ATTRIBUTES
name=PresentationColumnInformation
value_type=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=0 3 BEGIN_COL 113 459 ##FIELDID##{4864CA4D-0D44-4FB2-9A45-53B054CC3AAB}0 Year 2 262145 2 0 0 0 0 END_COL
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 1
BEGIN PROPERTY 2
BEGIN ATTRIBUTES
name=PresentationParameterInformation
value_type=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=0 3 0 1 0 4000 1 0 1400
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 2
BEGIN PROPERTY 3
BEGIN ATTRIBUTES
name=PresentationColumnHeadingInformation
value_type=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=0 3 0 404 16498431 1 4 0 52520 0 0 0 0 0 0 0 0 0 2 16777215 Arial,8,700,0,0,0
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 3
BEGIN PROPERTY 4
BEGIN ATTRIBUTES
name=PresentationRowHeadingInformation
value_type=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=0 3 0 404 16498431 0 0 0 52520 0 0 255 255 255 0 0 0 0 0 -167772160 Arial,8,700,0,0,0
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 4
END STEP 2
BEGIN STEP 3
BEGIN ATTRIBUTES
name=Filter
step_id={35072F75-2F71-417C-8E39-4BA14CD74A4A}
display_x=366
display_y=108
END ATTRIBUTES
BEGIN STEPTYPE
BEGIN ATTRIBUTES
name=Filter
clsid={4B343BA1-BCED-11D0-B0B7-00A0C91FDBFC}
step_type=5
input_count=1
output_count=1
sink=0
source=0
dc_step_type=303
icon_id=0
visibility=IS/G
rt_clsid={fe294e0d-d35a-11ce-814a-0020afea3965}
ct_clsid={fe294e0d-d35a-11ce-814a-0020afea3965}
ui_clsid={fe294e0d-d35a-11ce-814a-0020afea3965}
tip_text=Removes rows using filter conditions
END ATTRIBUTES
END STEPTYPE
BEGIN PROPERTY 1
BEGIN ATTRIBUTES
name=MatchCase
value_type=3
val_int=0
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 1
BEGIN PROPERTY 2
BEGIN ATTRIBUTES
name=TEXTVALUE
value_type=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=0.000000
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 2
BEGIN PROPERTY 3
BEGIN ATTRIBUTES
name=strOperator
value_type=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]==
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 3
BEGIN PROPERTY 4
BEGIN ATTRIBUTES
name=FIELD
value_type=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=Year
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 4
BEGIN PROPERTY 5
BEGIN ATTRIBUTES
name=strValueType
value_type=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=number
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 5
BEGIN PROPERTY 6
BEGIN ATTRIBUTES
name=USERINIT
value_type=3
val_int=1
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 6
BEGIN PROPERTY 7
BEGIN ATTRIBUTES
name=EXPRESSIONS
value_type=3
val_int=0
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 7
BEGIN PROPERTY 8
BEGIN ATTRIBUTES
name=FIELDID
value_type=1
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=##FIELDID##{4864CA4D-0D44-4FB2-9A45-53B054CC3AAB}0
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 8
BEGIN PROPERTY 9
BEGIN ATTRIBUTES
name=UpdateInPlace
value_type=3
val_int=1
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 9
BEGIN PROPERTY 10
BEGIN ATTRIBUTES
name=VALUETYPE
value_type=3
val_int=14
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 10
BEGIN PROPERTY 11
BEGIN ATTRIBUTES
name=Version
value_type=3
val_int=3
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 11
BEGIN PROPERTY 12
BEGIN ATTRIBUTES
name=Copy
value_type=3
val_int=1
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 12
BEGIN PROPERTY 13
BEGIN ATTRIBUTES
name=FIELDIDVALUE
value_type=1
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=##FIELDID##{35072F75-2F71-417C-8E39-4BA14CD74A4A}-1
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 13
BEGIN PROPERTY 14
BEGIN ATTRIBUTES
name=OPERATOR
value_type=3
val_int=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 14
END STEP 3
BEGIN STEP 4
BEGIN ATTRIBUTES
name=Time Generation
step_id={4864CA4D-0D44-4FB2-9A45-53B054CC3AAB}
display_x=166
display_y=108
END ATTRIBUTES
BEGIN STEPTYPE
BEGIN ATTRIBUTES
name=Time Generation
clsid={4B343B8B-BCED-11D0-B0B7-00A0C91FDBFC}
step_type=5
input_count=1
output_count=1
sink=0
source=1
dc_step_type=303
icon_id=0
visibility=ISD/T
rt_clsid={fe294e69-d35a-11ce-814a-0020afea3965}
ct_clsid={fe294e69-d35a-11ce-814a-0020afea3965}
ui_clsid={fe294e69-d35a-11ce-814a-0020afea3965}
tip_text=Generates date and time values in the Data Flow
END ATTRIBUTES
END STEPTYPE
BEGIN PROPERTY 1
BEGIN ATTRIBUTES
name=duration
value_type=3
val_int=1000
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 1
BEGIN PROPERTY 2
BEGIN ATTRIBUTES
name=num_cols
value_type=3
val_int=1
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 2
BEGIN PROPERTY 3
BEGIN ATTRIBUTES
name=type_0
value_type=3
val_int=4
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 3
BEGIN PROPERTY 4
BEGIN ATTRIBUTES
name=col_0
value_type=1
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]=Year
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 4
BEGIN PROPERTY 5
BEGIN ATTRIBUTES
name=portguid_0
value_type=1
is_list=0
value_attrs=0
openlink=0
is_proxy=0
BEGIN VECTOR val_string val_string_pos
[1]={8D665387-7CC5-4DA2-8167-2D1A6647A625}
[1]=0
END VECTOR
END ATTRIBUTES
END PROPERTY 5
BEGIN PROPERTY 6
BEGIN ATTRIBUTES
name=julian_day
value_type=3
val_int=0
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 6
BEGIN PROPERTY 7
BEGIN ATTRIBUTES
name=input_type
value_type=3
val_int=0
custom=0
is_list=0
value_attrs=0
openlink=0
is_proxy=0
END ATTRIBUTES
END PROPERTY 7
END STEP 4
END STEP 1
BEGIN FLOW 1
BEGIN ATTRIBUTES
name=Flow
source_output_no=0
dest_input_no=0
END ATTRIBUTES
SOURCE_STEP=1282415966877122563
DESTINATION_STEP=1282415966877122562
END FLOW 1282415966877122561
BEGIN FLOW 2
BEGIN ATTRIBUTES
name=Flow
source_output_no=0
dest_input_no=0
END ATTRIBUTES
SOURCE_STEP=1282415966877122564
DESTINATION_STEP=1282415966877122563
END FLOW 1282415966877122562
END PLAN
END
答案 0 :(得分:1)
在我的例子中,一个简单的If
语句可以解决问题。
$results3 = $vector_match.Matches($results2)
if($results3){ "Success" } else{ "Failiure"}