gpt4 book ai didi

regex - Perl正则表达式删除除最后一次出现的所有内容

转载 作者:行者123 更新时间:2023-12-02 22:14:40 24 4
gpt4 key购买 nike

我正在尝试使用命令行“重命名”来更改一些包含多个句点的文件名。例如:this.is.a.file.name.txt

环顾四周后,我发现了一些几乎可以帮助我实现目标的示例,但我似乎无法让它按要求工作。不用说,我是正则表达式的新手。

我已经试过了:

rename -v -n 's/\.(.+?)(?=\.)//' this.is.a.file.name.txt

结果是:

this.a.file.name.txt

我已尝试修改在以下资源中找到的示例,但我被卡住了。 PHP Regex: Select all except last occurrence Regex not replacing the last occurrence of a match

最佳答案

由于几个原因,您的正则表达式不太正确。首先,你用空字符串替换的东西应该只是句点,而你是从一个句点匹配到下一个句点的所有内容并将其删除。另外,你只做一次。

你想要的正则表达式是/\.(?=.*\.)//g,它表示匹配一个句点,后面跟一个任意数量字符的零宽度断言和另一个时期,并尽可能多地这样做。

关于regex - Perl正则表达式删除除最后一次出现的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14677871/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com