The Argentina international was replaced by Arda Turan just before the hour-mark of his Barcelona’s 1-1 draw with Atletico Madrid at Camp Nou on Wednesday.
The 29-year-old had pulled up in discomfort after tangling with Atletico defender Diego Godin, and was taken off by Luis Enrique as a precaution having initially attempted to play on.
Barca have now announced that Messi is expected to be sidelined until the middle of next month, most likely until after the international break.
[BREAKING NEWS] Leo Messi has groin strain in his right leg and he will be out for around 3 weeks pic.twitter.com/LrzDbsgqM6
— FC Barcelona (@FCBarcelona) September 21, 2016
He is set to miss LaLiga matches against Sporting Gijon and Celta Vigo, as well as a Champions League trip to Borussia Monchengladbach, although Barca will hope to have him fit for the home match against Pep Guardiola’s Manchester City on October 19.