[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RegExp.Replace


Use SPlit() with IgnorVoid parameter and Join again.

InText = Split(InText, " \t", Null, True).Join(" ")

This answer was provided by GianLuigi many moons ago as the fastest way to
make a multi spaced line have only 1 space between chars.
Ps. i use \t in the Split to catch tab spaces too.

Respects
BruceS


On Tue, 2 Dec 2025 at 09:19, Ian Roper <westozscribe@xxxxxxxxx> wrote:

> Public Function ClearDuplicateSpaces(InText As String) As String
>
>   While (InStr(InText, "  ") > 0)
>     InText = Replace(InText, "  ", " ")
>   Wend
>   Return InText
>
> End
>
>
> On 2/12/25 3:13 pm, CD wrote:
>
> Hello,
>
> I have a string like this:
>
> Dim s As String = "A     B    C D   E"
>
> s = RegExp.Replace(s, "\\s+", " ")
>
> Print s
>
> I would like to get "A B C D E"
>
> What should I write in the Pattern string?
> I've tried many things, without success.
> So what should I change to get the desired result?
>
> Regards
>
>

Follow-Ups:
Re: RegExp.ReplaceGianluigi <gradobag@xxxxxxxxxxx>
References:
RegExp.ReplaceCD <dessere.claude@xxxxxx>
Re: RegExp.ReplaceIan Roper <westozscribe@xxxxxxxxx>