正则表达式匹配孤立的4位数字的年份

我正在尝试在文本行中匹配年份(例如1975或2019)。

正则表达式[12][09]\d\d导致正确的匹配,但我想对其进行微调,使其与较长时间戳的年份部分不匹配,即01.01.2019应该不进行比赛。

我试图在单词边界\b[12][09]\d\d前面加上小点,但似乎也满足了这个要求。

moonpig_dty 回答:正则表达式匹配孤立的4位数字的年份

您可以使用

\b(?<!\d\.)(?:19|20)\d\d\b(?!\.\d)

请参见regex demo

详细信息

  • \b-单词边界
  • (?<!\d\.)-当前位置之前,不能有数字,后跟一个点
  • (?:19|20)-1920
  • \d\d-任意两位数字
  • \b-单词边界
  • (?!\.\d)-当前位置的右边,应该没有.和一个数字。
本文链接:https://www.f2er.com/3151111.html

大家都在问