Here's a solution for you. Not the most elegant...I kept the steps seperated so you can see what's going on:
<?php
$string = "Tha.t Va.y Ma`";
$words = split( ' ', $string );
foreach( $words as $word ) {
preg_match_all( "/(\w([^.`]*))/", $word, $matches );
foreach( $matches[0] as $match )
print $match . "<br>\n";
}
print "There are " . count( $words ) . " in the string. They are";
foreach( $words as $word )
print ' ' . preg_replace( "/[^.`]/", '', $word );
print ".<br>\n";
?>
-Rich