Re: [PHP] Deleting multiple backslashes; regex?

[email protected] (Al)
Newsgroups php.general
Message-ID <[email protected]>

On 3/15/2010 5:03 PM, Jim Lucas wrote:
> Al wrote:
>> Anyone have a regex pattern for deleting multiple backslashes e.g., \\\\\\\
>>
>> I pretty good with regex; but, be damned if I can delete them with
>> preg_replace()
>>
>> I've tried "\\\\" as the manual says
>>
>> preg_replace("/\\\\/", '', $str);
>>
>> preg_replace("/(\\\\)+/", '', $str);
>>
>> preg_replace("/\x5C/", '', $str);
>>
>> preg_replace("/\\x5c/", '', $str);
>>
>> And lots of others.
>>
>> stripslashes() and stripcslashes() are limited.
>>
>>
>>
>
> Might I ask, how are the multiple slashes getting generated in the first place?
>   Where is the data coming from?
>
> Next question would be: Do you want to completely remove all instances of
> multiple backslashes?  Or, do you want to replace all instances of multiple
> backslashes with a single backslash?
>
> I would try something like this:
>
> <plaintext><?php
>
> $in = '\\\as\\\\asdf\\\asdf\asdf\\\\\asdf\\\\\asdf';
>
> # to remove all backslashes, us this
> echo preg_replace('|[\\\\]+|', '', $in).PHP_EOL;
>
> # to remove all backslashes, us this
> echo str_replace('\\', '', $in).PHP_EOL;
>
> # to replace consecutive instances of backslashes with a single backslash
> echo preg_replace('|[\\\\]+|', '\\', $in).PHP_EOL;
>
> ?>
> done!
>
>

As I reported earlier, problem was my code was reloading a POST array following 
the backlash removal. Dumb error on my part.

Re: "Might I ask, how are the multiple slashes getting generated in the first 
place? Where is the data coming from?"  It comes from a client-side editor where 
users can enter them at will. It is my standard practice to do a good job of 
protecting users from themselves. I originally just had the usual stripslashes() 
but found it didn't take care of users adding several.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.