Perl的重命名:盖茨,比尔 – >比尔盖茨

Perl的重命名:盖茨,比尔 – >比尔盖茨,第1张

概述假设我有一个名为GATES,Bill.jpg的文件,我想将它们全部重命名为Bill Gates.jpg.我可以抓住这两个字 rename 's/^(.*?), (.*?)\./$2 $1\./g' * 要更改案例,有一些Perl的功能: $lower = lc("aBcDe"); # $lower is assigned "abcde" $upper = uc("aBcDe"); # $up 假设我有一个名为GATES,Bill.jpg的文件,我想将它们全部重命名为Bill Gates.jpg.我可以抓住这两个字

rename 's/^(.*?),(.*?)\./ \./g' *

要更改案例,有一些Perl的功能:

$lower = lc("aBcDe");  # $lower is assigned "abcde" $upper = uc("aBcDe");  # $upper is assigned "ABCDE"$lower = lcfirst("HELLO");  # $lower is assigned "hELLO" $upper = ucfirst("hello");  # $upper is assigned "Hello"

我试着利用它们:

rename 's/^(.*?),(.*?)\./ ucfirst()\./g' *

但它不起作用.

解决方法 您需要将“e”(eval)标志添加到正则表达式的末尾,否则将不会执行该函数.这意味着s ///表达式的整个第二部分必须是有效的Perl表达式(而不是有效的字符串):

rename 's/^(.*?),(.*?)\./" " . ucfirst(lc()) . "."/ge' *

(另请注意字符串中的额外空间$2)

有关此标志的更多信息,请参阅perlre文档.

总结

以上是内存溢出为你收集整理的Perl的重命名:盖茨,比尔 – >比尔盖茨全部内容,希望文章能够帮你解决Perl的重命名:盖茨,比尔 – >比尔盖茨所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1222699.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存