Hi,
See: https://community.appeon.com/index.php/qna/q-a/use-c-for-replace-function
As suggested by Mark Goldsmith, I've compared my timings of PB2021 with PB2022. Quite interesting!
![](data:image/png;base64,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)
Pb2021:
f_str_replace: 352.703 seconds. (point as decimal separator)
PFC- Mid() (of_globalReplace): 203.922 seconds
Roland's BlobMid() solution: 134.453 seconds.
Dotnet_replace C# DLL: 0.015 seconds.
pb2022:
f_str_replace: 117.9 seconds. (point as decimal separator)
PFC- Mid() (of_globalReplace): 172.6 seconds
Roland's BlobMid() solution: 26.5 seconds.
Dotnet_replace C# DLL: 0.031 seconds.
Conclusion:
In pb2022, f_str_replace is now more than twice as fast and even outruns the PFC Mid() based of_globalReplace function !!! Maybe something we could consider when doing any PFC improvements! The PFC replace has also improved, but not as much and no longer remains a better solution than a normal Replace().
Roland's stringclass BlobMid() based solution has improved enormeously too! Very impressive.
Interesting enough, though still the fastest, the DotNet replace has doubled time execution: from 0.015 to 0.031 seconds.
With PB2021, I would only get 0.031 seconds when using a DLL that was compiled for "any cpu". Now the x86 compilation is just as slow in pb2022.
regards,
MiguelL
Don't forget. It's only faster when doing a lot of search and replace within a string, which as for now requires us to do looping. For a single Replacement in a 'normal' length string, PB's current replace is perfect! I've requested a ReplaceAll() function to Appeon though, where something like that would definitely give us a lot of gain, be it in C, C++, ASM or C#.
Regards.