That's because:

The way it works is by moving through the script 1 character at a time. Each time it moves forward, it checks a certain length ahead, for a keyword. So:
VB Code:
  1. If (UCase$(Mid$(str, currPos, [b]13[/b])) = "ACTOR") Then
..will not execute at all, because "ACTOR" isn't 13 characters long. So change it to:
VB Code:
  1. If (UCase$(Mid$(str, currPos, [b]5[/b])) = "ACTOR") Then
chem