Помогите с регуляркой.

intagens

Client
Регистрация
28.09.2015
Сообщения
209
Благодарностей
31
Баллы
28
Подскажите регулярку - нужно в тексте заменить все знаки препинания обозначающие конец предложения на такие же знаки, только с пробелом после них, но при условии что после знака препинания идет любая заглавная английская буква и нет пробела
то есть "Hello, world!It's me!" нужно заменить на "Hello, world! It's me!"

по большому счету, нужна только регулярка чтобы меняла, например, точку на точку с пробелом, а остальные символы я в цикле поподставляю
 

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113
Что искать:
(\.|!|\?)([A-Z]+)

На что заменить:
$1 $2


 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
C#:
return System.Text.RegularExpressions.Regex.Replace("Hello, world!It's me!", @"([\.\?;!])(?=[A-Z])", @"$1 ");
 
  • Спасибо
Реакции: intagens и Sergodjan

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
Подскажите регулярку - нужно в тексте заменить все знаки препинания обозначающие конец предложения на такие же знаки, только с пробелом после них, но при условии что после знака препинания идет любая заглавная английская буква и нет пробела
то есть "Hello, world!It's me!" нужно заменить на "Hello, world! It's me!"

по большому счету, нужна только регулярка чтобы меняла, например, точку на точку с пробелом, а остальные символы я в цикле поподставляю
Код:
\.(?=[A-ZА-Я])
 
  • Спасибо
Реакции: orka13 и intagens

intagens

Client
Регистрация
28.09.2015
Сообщения
209
Благодарностей
31
Баллы
28

orka13

Client
Регистрация
07.05.2015
Сообщения
2 177
Благодарностей
2 184
Баллы
113
а как сюда, к знакам препинания, еще и двойные кавычки добавить?
В данном случае их надо дублировать в C#:
C#:
return System.Text.RegularExpressions.Regex.Replace(@"Hello, world""It's me!", @"([\.\?;!""])(?=[A-Z])", @"$1 ");
 
  • Спасибо
Реакции: intagens

intagens

Client
Регистрация
28.09.2015
Сообщения
209
Благодарностей
31
Баллы
28

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)