Messi, who is hoping to be named the world's best player for the fifth time in a row at the FIFA Ballon d'Or awards in January, sustained the injury in the first half of Sunday's Liga game against Real Betis.
Messi called for the change after tumbling in a challenge and was replaced by Andres Iniesta in the 21st minute.
Liga leaders Barcelona confirmed on Monday that Messi will be unavailable for between six and eight weeks as he recovers from the blow.
A Barca statement read: "According to the club's medical services, the tests taken on Monday morning by Leo Messi have confirmed that the player has suffered a torn muscle in the femoral biceps of his left leg.
"The approximate time he will be out is between six and eight weeks.
"The first part of his recovery will take place in Barcelona and the second in Buenos Aires."
The Argentina international has suffered a string of muscle problems at the start of this campaign and has struggled to reach his best form to date.
Messi is already eight goals shy of great rival Cristiano Ronaldo, who has 16 to his name, in the Liga goalscoring charts this season.