Jump to content

Archived

This topic is now archived and is closed to further replies.

calebsg

preg_replace help

Recommended Posts

I need to match both '1Tim' and '1 Tim' (quotes added) but always return '1 Tim'. Right now (this is an excerpt of a larger regex) I have ((?:1|2|(?-i)I|II) tim(?:othy|)) and I'm wondering if someone could give me a pointer as to how I might ensure that it is always returned with a space.

I also need to match strings where there is no numeric prefix so adding another set of parenthesis is not a good option.

TIA
Caleb

Share this post


Link to post
Share on other sites
As far as I know it can't be done without splitting it into two captures:

[code]preg_replace('/(1|2|I|II) ?(tim)othy|/i', '$1 $2', $text);[/code]

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.