在文件记事本++内的一行上附加Txt文件的文件名

时间:2011-07-05 08:22:41

标签: regex search replace filenames notepad++

我不是编码员/程序员所以我对正则表达式的了解仅限于我在Google和stackoverflow等网站上可以找到的内容。

我有一系列文件,大约10k,文件名不同。现在我想将每个文件的特定文件名放在txt文件中的一行中,最好放在文件的第一行或最后一行。

所以,如果我有一个文件名为Caste“System in Nepal.txt”的文件,我想在txt的第一行或第二行看到“尼泊尔的Caste System”,不带引号。

任何人都可以帮助我吗?非常感谢。 :)

2 个答案:

答案 0 :(得分:0)

请使用以下内容:

(.+?)\.\w+

您随后用于文件名的括号中的位。这假设扩展名前的文件名中只有一个点。否则,如果你有像Document.name.txt这样的文件名,你需要一个更复杂的正则表达式。

答案 1 :(得分:0)

我不确定您是否可以在Notepad ++中执行此操作,因为您需要开头的文件列表。如果您已经拥有了这个,那么您可以使用find和replace来查找.txt(如果它们都具有.txt扩展名)并将其替换为空。如果您有其他扩展程序,请尝试使用\.[^\.]$之类的正则表达式,并将其替换为空。这应该匹配最后一个完整停止及其后的所有内容。

如果您的文本编辑器中没有文件列表,那么您可以从类似于find的Bourne兼容shell中获取它们。 -type f -print> ../file-you-want-the-list-in.txt在包含所有文件的目录中运行。