If you're wanting to learn about regular expressions, I'd recommend checking out Mastering Regular Expressions. The author not only explains regular expressions, but also discusses how regular expression engines work and how that impacts the regular expression syntax. It's a good reference book to have handy.
As for your question on (?=\d), that's a zero width look ahead. Basically your second regular expression is looking for the first occurrence of the word 'man' that is immediately followed by a digit and then replaces 'man' with 'cat'. That's assuming that you didn't accidentally forget to include modifiers after the last / in your post.
For example, if your string was man mantis man1 man2 man15, the second regular expression that you provided would change that to man mantis cat1 man2 man15.
Are you posting in the right place? Check out Where do I post X? to know for sure.
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
Want more info? How to link or
or How to display code and escape characters
are good places to start.