Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Regex: remove duplicate slashes [PHP]

Posted on 2009-04-02
5
Medium Priority
?
1,120 Views
Last Modified: 2012-05-06
I want to get rid of all duplicate slashes, for example:

Hello // world ////, how are/// you?

Should become:

Hello / world /, how are/ you?
0
Comment
Question by:level9wizard
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
5 Comments
 
LVL 15

Expert Comment

by:yuk99
ID: 24050924
s/\/+//
0
 
LVL 13

Assisted Solution

by:marchent
marchent earned 520 total points
ID: 24050927

$str = "Hello // world ////, how are/// you?";
$str = preg_replace('|/+|', '/', $str);
print "$str\n";

Open in new window

0
 
LVL 15

Assisted Solution

by:yuk99
yuk99 earned 80 total points
ID: 24050937
Sorry. s/\/+/\//
0
 
LVL 15

Accepted Solution

by:
fsze88 earned 1200 total points
ID: 24051004
<?
$str = 'Hello // world ////, how are/// you?';

$pattern = '/\/+/';
$replacement = '/';
echo preg_replace($pattern, $replacement, $str);

?>
0
 
LVL 3

Assisted Solution

by:FirestormX
FirestormX earned 200 total points
ID: 24053186
As a quick explanation to what everyone's written above, PHP's regex patterns are simply strings, with a / at the begining and end of the pattern, which is why they're putting a \ in front of the /, to "escape" the character. So baiscally /\/+\//, actually becomes a pattern of /+/

Then + sign means to look for 1 or more instance of the previous character, which in this case, is /. It then checks to see if after it finds as many of / as possible, to make sure the last character is /.  
So translated, it means "find one or more /, that ends in /, and replace everything it finds with a single /".
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Foreword (July, 2015) Since I first wrote this article, years ago, a great many more people have begun using the internet.  They are coming online from every part of the globe, learning, reading, shopping and spending money at an ever-increasing ra…
This article discusses how to create an extensible mechanism for linked drop downs.
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.

688 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question