我的歌词格式如下:
[00:26.8]Lo [00:27.0]rem[00:27.2] Ipsum[00:27.4] sam[00:27.6]ple [00:27.9]text[00:28.1] to [00:28.5]
[00:28.51]demonstrate[00:28.7] the[00:28.9] lyrics[00:29.1] text
我使用以下正则表达式来匹配时间标签 ([hh:mm.ss]
):
/\[\d{1,2}:\d{1,2}\.\d{0,2}\]/ig
但是我如何找到并删除最后一个时间标签(上例中的[00:29.1]
)?了解我可以匹配所有出现的情况,取最后一个,找到文本中相应标签的位置(使用 lastIndexOf
用法),然后删除该标签。但有没有更好的方法来实现呢?
更新。还有一个条件 - 如果时间标签位于行的开头,则不应将其删除。 IE。如果是歌词:
[00:26.8]Lo [00:27.0]rem[00:27.2] Ipsum[00:27.4] sam[00:27.6]ple [00:27.9]text[00:28.1] to [00:28.5]
[00:28.51]demonstrate
找到并删除的标签应该是[00:28.5]
,而不是[00:28.51]
。
最佳答案
关于javascript - 如何删除最后出现的匹配项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28265163/