在 SublimeText 中追加正则表达式

Append regular expression in SublimeText

我对正则表达式还很陌生。我正在处理 sublime text,我正在尝试替换一些格式如下的数字的所有实例:

00:00:59
00:01:00
00:01:22

等等。

在末尾附加:00 si 它将变成00:00:59:00

我使用了 [0-9]{2}:[0-9]{2}:[0-9]{2},它找到了所有实例,但我不知道如何附加 :00 和替换所有实例。

您可以使用

\b[0-9]{2}:[0-9]{2}:[0-9]{2}\b

作为正则表达式并替换为 [=12=]:00。这里,[=13=] 是对整个匹配的反向引用。

V

\b 代表单词边界。如果您需要避免匹配那些后面已经有 :00 的时间戳,您可以考虑使用

(?<!\d:)\b\d{2}:\d{2}:\d{2}\b(?!:\d)

如果开头的 2 位数字子串前面有一个数字 + :,则 (?<!\d:) 否定后瞻将导致匹配失败,而 (?!:\d) 否定前瞻将导致匹配失败如果最后 2 位数字后跟 : + digit.

正则表达式用于查找所有出现的这些数字。您单击 "Find" 菜单,然后单击 "Find"。您在搜索框中输入正则表达式。然后你点击你的sublime text右下角的"Find All"按钮window.

现在您有多个游标,每个游标对应一个。您按一次右箭头键,因此每个光标都位于其出现的末尾。然后键入“:00”(不带引号)并按 ESC 键删除所有多个光标。应该可以。

可以使用Sublime Text的搜索替换工具(Ctrl+Maj+F), 激活正则表达式选项 (.* icon).

  • 在"Find"

  • 中输入[0-9]{2}:[0-9]{2}:[0-9]{2}
  • 在"Replace"

  • 中输入[0-9]{2}:[0-9]{2}:[0-9]{2}:00
  • 单击替换