我想从 Microsoft Word 文档中删除时间码。 我有以下模式:
00:00:00:00 - 00:00:00:00
我正在使用这个脚本:
[0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[0-9]{2} - [0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[0-9]{2}
但这给了我一个错误“模式匹配表达式”太复杂了。
如果我使用以下脚本,那么它工作正常:
[0-9]{2}\:[0-9]{2}\:[0-9]{2}\:[0-9]{2} - [0-9]{2}\:[0-9]{2}\:[0-9]{2}\:
但是如果我添加最后两位数字,则会出现错误。
有人可以帮我吗?
我认为MS Word通配符中限制量词的数量是有限制的。
[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}
(带有 7 {2}
量词)是有效的,[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{2}
(带有 8 {2}
量词)会抛出您提到的错误。
您可以对重复进行分组,并仅对左右部分应用一个限制量词:
[0-9]{2}(:[0-9]{2}){3} - [0-9]{2}(:[0-9]{2}){3}
其中
(:[0-9]{2}){3}
匹配 :
和两位数字 3 次。