Просто опустите второй заполнитель из английской строки шаблона и используйте пустую строку для второго аргумента (или любой другой строки, это не имеет значения, значение будет проигнорировано) при отображении строки:
XML:
<string name="encouraging_comment">
%1$s are complicated...
</string>
Java:
getString(R.string.encouraging_comment, "women", "");
getString(R.string.encouraging_comment, "men", "");
Это работает, потому что это не ошибка, если есть больше аргументов, чем заполнителей, только если меньше аргументов, чем заполнителей.
Я предполагаю, что у вас будет какая-то таблица или отображение, где вы будете искать значения заполнителей на основе языка и пола. В псевдокоде:
(French, Female) -> ("femmes", "e")
(French, Male) -> ("hommes", "" )
(English, Female) -> ("women", "" )
(English, Male) -> ("men", "" )