我需要将以下段落拆分为句子但是忽略在使用诸如Mr. Mrs. Ms.之类的前缀标题的点处拆分。
string text = "Joffrey died on March 25, 1988 of AIDS at the age of 57 in New York City, New York. He is buried at Cathedral of Saint John the Divine. Mr.Joffrey was inducted into the National Museum of Dance's Mr. & Mrs. Cornelius Vanderbilt Whitney Hall of Fame in 2000."
正常的正则表达式语句,例如:@"(?<=[\.!\?])\s+"
会成功地分割句子,但也会分裂像约翰里先生这样的单词,这是我想要避免的。
澄清此问题的正则表达式声明非常有用:)
谢谢
答案 0 :(得分:1)
这很简单,使用负面的外观:
拆分以下正则表达式:
(?<!Mr?s?)\.\s*
这将匹配前面没有Mr
或Mrs
的句点。它还包括以下空格。
如果您也想忽略缩写,可以使用:
(?<!Mr?s?|\b[A-Z])\.\s*
这将忽略以单个大写字母开头的任何句号。