Что-то вроде следующего возможно?
Regex.Replace(yourString, @"(>[^<]+[^ ])<", @"$1 <");
Решение предполагает, что предложение находится в диапазоне от >
до <
и имеет длину один или несколько символов.
Действительно ли предложение внутри XML, или вы извлекли его, используя любой из многих методов XML или DOM? Например, используя это:
foreach(node in YourDOM.SelectNodes("//emphasis[@type='italic']"))
{
string yourString = node.FirstChild.Value;
}
Если это так, если строка сама по себе, вы можете сделать это вместо этого, что намного проще и безопаснее:
Regex.Replace(yourString, "([^ ])$", "$1 ");
РЕДАКТИРОВАТЬ: Я изначально пропустил , если нет места , пост выше редактируется с этой информацией