Remove a string between two characters in PHP

This article, will discuss multiple ways to remove a string between two characters in PHP.

Table Of Contents

Background

There are scenarios in string manipulation where you need to remove a part of a string that is situated between two specific characters. For example, in a string like “This is a [sample] string”, you might want to remove everything between the square brackets [ and ], including the brackets themselves, resulting in “This is a string”.

Solution: Using Regular Expressions with preg_replace()

The most efficient way to accomplish this is to use preg_replace() with a regular expression. Regular expressions provide the flexibility to match patterns within strings, making them ideal for this kind of task.

Removing Substring Between Square Brackets []

Let’s see the complete example,

<?php
$originalString = "This is a [sample] string";

// Regular expression to remove substring between square brackets
$cleanString = preg_replace('/[.*?]/', '', $originalString);

// Display the result
echo $cleanString;
?>

Output

This is a  string

In this example, preg_replace(‘/[.*?]/’, ”, $originalString) uses a regular expression that matches any substring starting with [ and ending with ]. The .*? is a non-greedy match for any characters between the brackets. The matched substring, including the brackets, is then replaced with an empty string.

Generalization for Any Two Characters

You can generalize this method for any two characters by modifying the regular expression. For example, to remove content between parentheses ():

Let’s see the complete example,

<?php
$originalString = "This is a (sample) string";

// Regular expression to remove substring between parentheses
$cleanString = preg_replace('/(.*?)/', '', $originalString);

// Display the result
echo $cleanString;
?>

Output

This is a  string

Replace [.*?] with (.*?) to target parentheses instead of square brackets.

Summary

Removing substrings between two specific characters in a PHP string can be effectively achieved using preg_replace() with an appropriate regular expression. This method offers a powerful and flexible solution for various string manipulation tasks, particularly when the structure of the unwanted substring is known but its content can vary.

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to Top