在SublimeText

时间:2017-05-22 12:09:29

标签: regex sublimetext2

我对正则表达式很新。我正在研究sublime文本,我正在尝试替换一些格式如下的所有实例:

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

等等。

在结尾处附加:00,它将变为00:00:59:00

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

3 个答案:

答案 0 :(得分:4)

您可以使用

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

作为正则表达式并替换为$0:00。在这里,$0是整场比赛的反向引用。

enter image description here

V

enter image description here

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

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

如果开头的2位数字符串前面有一个数字+ (?<!\d:),那么:负后看将使匹配失败,(?!:\d)否定前瞻将使比赛失败最后2位数字跟随: +数字。

答案 1 :(得分:0)

正则表达式可以找到这些数字的所有出现。单击“查找”菜单,然后单击“查找”。您在搜索框中输入正则表达式。然后单击sublime文本窗口右下角的“全部查找”按钮。

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

答案 2 :(得分:0)

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

  • 在&#34;中查找&#34;

  • 中输入[0-9]{2}:[0-9]{2}:[0-9]{2}
  • 在&#34中输入[0-9]{2}:[0-9]{2}:[0-9]{2}:00;替换&#34;

  • 点击替换

enter image description here