Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
希望有人可以帮助我解决这个问题。我在 word 中使用正则表达式并且在搜索模式上遇到了问题。我想在“月日,年”中搜索日期并使用它:
(<[ADFJMNOS]*>) ([0-9]{1,2},) ([0-9]{4})
但是,它会继续选择直到日期的所有单词。例如,如果我有:
2011 年 3 月 3 日是一个美好的日子。
它将选择“Day on March 3, 2011”,因为 D 匹配字符串。我错过了什么才能让它在本月开始匹配?
谢谢!
那是因为您的规则规定“以 D 开头的所有内容,直到我找到一些数字”,您必须对其进行更改,使其只能找到一个单词:
(<[ADFJMNOS]\w*\s>) ([0-9]{1,2},) ([0-9]{4})
这条规则说,一切都以 D(或任何其他字母)开头,直到我到达一个空格,然后,只要有数字,就继续。
\w表示可以在单词中找到的任何字符,因此空格不会计算在内,表示\s空格。
\w
\s
如果您不只是使用单个字符,而是使用所有月份的开头甚至整个单词,您可能会发现这更加准确:(Jan\w+|Feb\w+ ... )
(Jan\w+|Feb\w+ ... )