Thread Leerzeichen-Regex lässt StackExchange ausfallen? (27 answers)
Opened by GwenDragon at 2016-07-21 13:24

renee
 2016-07-26 17:05
#185149 #185149
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Das hat wiederum damit zu tun, dass Du eine "Zeichenkette" (das A) verwendest. Die Regex-Engine erkennt, dass dieser Substring nicht vorkommt und bricht dann ruckzuck ab...

Code (perl): (dl )
1
2
3
4
use re 'debug';

my $inputB = "X".(" \t" x 10000)."B";
$inputB =~ s/[\s\u200c]+A/ A/g;


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
$ perl clms_regex.pl 
Compiling REx "[\s200c]+A"
Final program:
1: PLUS (13)
2: ANYOF[\x{09}-\x{0D} 02c][{utf8}0085 00A0 1680 2000-200A 2028-2029 202F 205F 3000] (0)
13: EXACT <A> (15)
15: END (0)
floating "A" at 1..9223372036854775807 (checking floating) stclass ANYOF[\x{09}-\x{0D} 02c][{utf8}0085 00A0 1680 2000-200A 2028-2029 202F 205F 3000] plus minlen 2
Matching REx "[\s200c]+A" against "X %t %t %t %t %t %t %t %t %t %t %t %t %t %t %t %t %t %t %t "...
Intuit: trying to determine minimum start position...
Did not find floating substr "A"...
Match rejected by optimizer
Freeing REx: "[\s200c]+A"


Und dann ändere mal in
Code (perl): (dl )
1
2
3
4
use re 'debug';

my $inputB = "X".(" \t" x 10000)."B";
$inputB =~ s/[\s\u200c]*$/ A/;
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/

View full thread Leerzeichen-Regex lässt StackExchange ausfallen?