dancingpriest
dancingpriest

Reputation: 65

Regular expression: match single characters AND/OR groups of characters (strings) at the same time?

I'd like to be able to match zero or more of a list of characters AND/OR match zero or more of a list of strings.

Example: Here is my 12345 test string 123456.

Target: Here is my 45 test string .

So I wish to remove 1, 2, and 3, but only remove 456 if it's a whole string.

I have tried something like /[123]+456+/gs but I know this is wrong.

Any help is appreciated.

Upvotes: 0

Views: 90

Answers (3)

Mike C
Mike C

Reputation: 3117

For javascript, this works:

var oldString = 'Here is my 12345 test string 123456.';

var newString = oldString.replace(/[123](456)?/g, '');

Upvotes: 0

Peter Lindqvist
Peter Lindqvist

Reputation: 10200

Code:

$str = "Here is my 12345 test string 123456.";
$res = preg_replace('/[123]|456/','',$str);
echo $res;

Output:

Here is my 45 test string .

Upvotes: 1

Arc
Arc

Reputation: 11296

/[123]|456/ may be what you want.

Upvotes: 1

Related Questions