Quote<Command>^C^C(C:BJ_TBLOGOUT);-vbarun BJ__POSFIND GEM_F_FL ALK </Command>
Quote<Revision MajorVersion="16" MinorVersion="2" UserVersion="1" />
1 2 3 4 5 6 7
$string = q(<Command>^C^C(C:BJ_TBLOGOUT);-vbarun BJ__POSFIND GEM_F_FL ALK </Command>); ($wert) = $string =~ />([^<]+)</; say $wert; $string = q(<Revision MajorVersion="16" MinorVersion="2" UserVersion="1" />); ($wert) = $string =~ m|<.*MinorVersion="(\d+)"[^>]+>|i; say $wert;
1 2 3 4
$string = q(<Revision MajorVersion="16" MinorVersion="2" BlahBlubb="4711" UserVersion="1" />); $such_parameter = 'BlahBlubb'; ($wert) = $string =~ m|<.*\Q${such_parameter}\E="(\d+)"[^>]+>|i; say $wert;
1 2 3
$string = q(<SmallImage Name="ICBJ0266.bmp" />); ($wert) = $string =~ m|<.*Name="(\d+)"[^>]+>|i; print $wert."\n\n";
1 2 3 4 5 6 7 8 9
my %cuix=( macro_type=>'', type=>'', UID=>'', # Verknüpfungselement zwischen den Ribbons und der Ribbon-Gruppe name=>'', command=>'', SmallImage=>'', LargeImage=>'', );
1 2 3 4 5 6 7
print "Data: ".$_."\n"; if(index($_,"<MenuMacro") == 0){ print "\n\n---- Befehl anfang ----\n" if $config{debug} == 1; $cuix{UID} = $_ =~ m|<.*UID="([\da-zA-Z.]+)"[^>]+>|i; print "UID: ".$cuix{UID}."\n"; $count_block_start++; }
QuoteData: <MenuMacro UID="MM_2316">
Suche MenuMacro: 0
---- Befehl anfang ----
UID:
1 2 3 4 5
elsif (index($_,"<SmallImage") == 0){ print "SmallImage gefunden!: ".$_."\n"; $cuix{SmallImage} = $_ =~ m|<.*Name="([\da-zA-Z.]+)"[^>]+>|i; print "SmallImage: ".$cuix{SmallImage}."\n"; }
QuoteLargeImage gefunden!: <LargeImage Name="ICBJ0117.bmp" />
LargeImage: 1
QuoteSmallImage gefunden!: <SmallImage Name="RCDATA_16_ZOOPRE" />
SmallImage:
$cuix{UID} = $_ =~ m|<.*UID="([\da-zA-Z.]+)"[^>]+>|i;
($cuix{UID}) = $_ =~ m|<.*UID="([^"]+)"[^>]+>|i;
$cuix{SmallImage} = $_ =~ m|<.*Name="([\da-zA-Z.]+)"[^>]+>|i;
($cuix{SmallImage}) = $_ =~ m|<.*Name="([^"]+)"[^>]+>|i;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
my %cuix=( macro_type=>'', type=>'', UID=>'', # Verknüpfungselement zwischen den Ribbons und der Ribbon-Gruppe name=>'', command=>'', SmallImage=>'', LargeImage=>'', ); ... print "UID vor: ".$cuix{UID}."\n"; print "\n\n---- Befehl anfang ----\n" if $config{debug} == 1; ($cuix{UID}) = $_ =~ m|<.*UID="([^"]+)"[^>]+>|i; print "UID: ".$cuix{UID}."\n"; $count_block_start++;
QuoteData: <MenuMacro UID="MM_2316">
UID vor:
---- Befehl anfang ----
Use of uninitialized value $cuix{"UID"} in concatenation (.) or string at cuix2c
sv.pl line 93, <$fh_cuix> line 5845.
UID:
($cuix{UID}) = $_ =~ m|<.*UID="([^"]+)"[^>]*>|i;
1
2
3
4
5
6
7
8
9
m| #### Match startet
< # startet von der spitzen Klammer
.* # gefolgt von beliebig vielen (0..) beliebeigen Zeichen
UID=" # exstierende Zeichenkette UID="
([^"]+) # fängt alle Nicht-Anführungszeichen, also die Werte innerhalb ""
" # gefolgt von 1 Anführungsuzeichen
[^>]* # gefolgt von beliebig vielen (0..) Zeichen, die kein > sind
> # bis zur spitzen Klammer
|i # es wird Klein/Großschreibung nicht unterschieden
1 2
my $parameter = 'NEXTUID'; my ($wert) = $_ =~ m|<.*${parameter}="([^"]+)"[^>]*>|i;
2015-08-18T06:22:58 jan99ich muss irgendwie versuchen aus Zeichenketten Werte herauszubekommen die in aus einer XML-Struktur stammen.
Quote<Command>^C^C(C:BJ_TBLOGOUT);-vbarun BJ__POSFIND GEM_F_FL ALK </Command>
Aus einem Tag (hier Command) ist der Wert zu extrahieren