Mitch Moreland drove in three runs with a two-run double in the third inning and a bases-loaded walk in the fourth, helping the Texas Rangers subdue a San Francisco Giants split-squad, 7-5.