Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我试图在 perl 中找到非常具体的文件名模式匹配。
我有一系列文件称为:
AAA.test.xml and AAA.xml.
我将完整的文件路径传递给函数。
我想比较文件名,如果文件名是 AAA.xml,我想将其复制到另一个目录。
这是我的问题:有没有办法可以比较文件名并检查它是否在名称中包含 2 个点?
编辑:使用 REGEX 也很好,我只是不知道如何在 perl 中做到这一点
如果你有文件名(听起来像你),你可以使用一个简单的正则表达式来检查两个文字句点。例如:
if ($name =~ /\..*\./) { do stuff }
重要的是要注意字符“。” 在正则表达式中很特别。字符序列“.” 表示文字“。”;没有反斜杠的字符序列“.”表示任何字符。另外,“*”表示前面的东西需要匹配零次或多次。
所以,上面给出的正则表达式的意思是“找到一个文字'。' 字符,然后是任意数量的任何东西,然后是另一个文字“。”。