【发布时间】:2018-09-12 11:16:50
【问题描述】:
我是使用 RegEx 的新手,但我仍然有点磕磕绊绊,所以如果这是一个基本问题,我很抱歉。我正在尝试从两个括号之间提取一个字符串,但我似乎无法弄清楚如何从匹配项中排除第一部分。
这是我的正则表达式模式:
(.+?)(?= -)
我想提取出生日期,例如,不包括“b”。和培训“-”。这是一个样本集:
( b. circa 1883 - d. Mar 03, 1960 )
( b. May 21, 1887 - d. Jan 24, 1979 )
( b. May 28, 1902 Zembin, BELARUS - d. Dec 22, 1998 Florida, USA )
( b. Jan 09, 1886 Philadelphia, Pennsylvania, USA - d. May 17, 1969 New York, New York, USA )
我的正则表达式匹配( b. Jan 09, 1886 Philadelphia, Pennsylvania, USA(例如),但还包含“( b. ”前缀,我想排除它。
正则表达式还匹配以下文本,我也想将其排除:
Husband of Sarah Wilder (August 2000
另外,我无法匹配以下字符串,大概是因为圣路易斯的点和空格。
( b. Jun 28, 1920 St. Louis, Missouri, USA )
我已经敲了好几个小时的头,但就是无法完全理解其余部分。任何帮助或指导将不胜感激。通过阅读这里的许多帖子,我已经得到了很多帮助。
非常感谢!
【问题讨论】:
标签: regex regex-lookarounds regex-group