Thread String, character, suche und ersetzen (26 answers)
Opened by Graf Herschel at 2018-12-11 10:42

Linuxer
 2018-12-11 21:43
#189384 #189384
User since
2006-01-27
3869 Artikel
HausmeisterIn

user image
Ich finde das durchaus einen interessanten Ansatz, aber ich erkenne keinen Vorteil darin, rindex() händisch nachzuprogrammieren.

Smartmatch ist soweit ich weiß immer noch experimentell, von daher würde ich mich in produktiven Code nicht darauf verlassen wollen (vielleicht mal bei One-Shots; aber nicht bei Skripten, die wiederholt eingesetzt werden. Ehrlich gesagt, vermeide/ignoriere ich den Operator komplett).

Und für jedes Zeichen auch jeweils einen substr()-Aufruf zu machen, scheint mir auch recht teuer... Aber das ist mehr ein Bauchgefühl beim Nachvollziehen...

Mein Benchmark bestätigt mich da (ist ja auch von mir geschrieben ;-) ):

Code: (dl )
1
2
3
4
5
6
7
Smartmatch is experimental at backwards_replace.pl line 43.
String Length: 2500
Rate pure_regex for_smartmatch reverse_regex rindex_substr
pure_regex 752/s -- -100% -100% -100%
for_smartmatch 190934/s 25277% -- -35% -46%
reverse_regex 292322/s 38753% 53% -- -18%
rindex_substr 356174/s 47240% 87% 22% --
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread String, character, suche und ersetzen