Text 记事本++;在我的案例中查找并选择特定文本或数字

Text 记事本++;在我的案例中查找并选择特定文本或数字,text,notepad++,edit,subtitle,srt,Text,Notepad++,Edit,Subtitle,Srt,我正试图编辑一个.srt文件,但我被困在一个特定的任务中。我相信可能有更简单的方法,但在搜索了几个小时后,我找不到任何对我有帮助的方法。我正在尝试选择字符串“1”的所有匹配项,然后使用列编辑器将这些匹配项增加1 这里的第一张图片显示了我的.srt文件中的主要问题。我想选择,而不是突出显示当前以绿色突出显示的所有值。“查找和替换”框似乎没有任何帮助,因为我需要使用列编辑器对所选字符串执行增量操作。我也尝试过mark功能,但也没有任何效果。 一旦我选择了它们,我就可以进行这些操作。 我知道我

我正试图编辑一个.srt文件,但我被困在一个特定的任务中。我相信可能有更简单的方法,但在搜索了几个小时后,我找不到任何对我有帮助的方法。我正在尝试选择字符串“1”的所有匹配项,然后使用列编辑器将这些匹配项增加1

这里的第一张图片显示了我的.srt文件中的主要问题。我想选择,而不是突出显示当前以绿色突出显示的所有值。“查找和替换”框似乎没有任何帮助,因为我需要使用列编辑器对所选字符串执行增量操作。我也尝试过mark功能,但也没有任何效果。

一旦我选择了它们,我就可以进行这些操作。


我知道我可以按住ctrl键并手动选择需要编辑的行,但这将花费很长时间。知道我需要选择的文本已经以绿色突出显示,但没有选择,这有点令人沮丧。说到记事本+,我只是一个新手,所以我不知道所有的功能。任何帮助都将不胜感激。谢谢

这不可能轻松选择该文本。但是,如果您有PythonScript插件,那么使用类似PythonScript的Python脚本就可以很容易地实现这一点

counter = -1

def increment_whole_line_number(match):
    global counter
    counter += 1
    return str(int(match.group())+counter)

editor.rereplace(r'(?m)^\d+$', increment_whole_line_number)
(?m)^\d+$
正则表达式匹配仅由数字组成的整行(1个或多个数字)

是关于如何安装工作的PythonScript版本的说明(由于某些原因,内置版本不适合我)

这是我的测试:


IMHO最简单的方法是用你最喜欢的脚本语言编写脚本。哈哈,我知道非常基本的python和java。我不明白为什么没有一个简单的功能,比如搜索和选择。就像我需要选择的值已经用绿色突出显示,以便大声呼喊。如果有人能解释为它编写代码有多困难,请做一些简单的选择。我不知道我必须使用什么类型的编程命令,甚至不知道如何将代码实现到Notepad++。你确定没有简单的方法来选择特定的文本吗?困难不在于选择,而在于替换。要选择其中只有
1
的所有行:
菜单搜索>标记…
,在搜索框中键入
^1$
,选中
标记行
,然后单击
查找所有
。我不确定所有这些therms,因为我没有Npp的英文版本。我只是尝试了一下,标记功能似乎并没有真正选择我需要的。这感觉就像它只是突出。如果我手动选择一行并执行列编辑器操作,它会工作。这是我尝试过的图片,我使用自己的网站来主持图片以保持质量。在上面的问题中,您可以看到,如果我手动选择数字为1的行并执行列编辑操作,它会按照我的需要工作,但是如果我尝试使用标记功能,它似乎并没有实际选择文本。为了使正则表达式更精确一些,您可以使用
(?m^\d+(?=\r?\n\d{2}:\d{2}:\d{2}\d{3}-->)
谢谢,我得去看牙医,但今晚我一定要试试。我有点时间,第一次就成功了。非常感谢。每天学习新事物。现在,我将学习该脚本,并了解它如何应用于notepad++,以便我可以构建自己的脚本。