0

希望有人可以帮助我解决这个问题。我在 word 中使用正则表达式并且在搜索模式上遇到了问题。我想在“月日,年”中搜索日期并使用它:

(<[ADFJMNOS]*>) ([0-9]{1,2},) ([0-9]{4})

但是,它会继续选择直到日期的所有单词。例如,如果我有:

2011 年 3 月 3 日是一个美好的日子。

它将选择“Day on March 3, 2011”,因为 D 匹配字符串。我错过了什么才能让它在本月开始匹配?

谢谢!

4

1 回答 1

0

那是因为您的规则规定“以 D 开头的所有内容,直到我找到一些数字”,您必须对其进行更改,使其只能找到一个单词:

(<[ADFJMNOS]\w*\s>) ([0-9]{1,2},) ([0-9]{4})

这条规则说,一切都以 D(或任何其他字母)开头,直到我到达一个空格,然后,只要有数字,就继续。

\w表示可以在单词中找到的任何字符,因此空格不会计算在内,表示\s空格。

如果您不只是使用单个字符,而是使用所有月份的开头甚至整个单词,您可能会发现这更加准确:(Jan\w+|Feb\w+ ... )

于 2013-05-03T15:46:15.807 回答