This little diddy will not work if fox is followed by a comma, period or anything other than whitespace and then the next word.
I assume PHP, so I'll write this with that function:
preg_match_all('/fox\s([A-Z]{1,32})/i', $inputStr, $parts);
$parts will then contain an array that has the word next to fox. That regex reads, "find the word fox with some white space after it. Provided it is found, and there is a string of characters containing A-Z of length 1..32 chars, collect that. The preg_match_all rolls through the inputStr to get all occurrences rather than just the first, like preg_match.
There are a whole lot of ways that you might make that more effective, not the least of which is optional punctuation.
Google
Jan Goyvaerts regex for the best resource I've found on the web. Buy the book. It'll set you right, straight away (Amazon and others have it as well).
Or just go here:
http://www.regular-expressions.info/tutorial.html