java - 用于匹配 S3 文件和目录的正则表达式

标签 java regex

我有以下用于匹配 S3 URL 的模式

Pattern.compile("^s3://([^/]+)/(.*?([^/]+))$");

这个匹配

s3://bucket/path/key

但不匹配目录

s3://bucket/path/directory/

是否有一种简单的方法来更改模式以匹配目录?

最佳答案

正则表达式中只缺少最后一个斜线。你可以试试这个:

^s3://([^/]+)/(.*?([^/]+)/?)$
                         ^^

regex101 demo .

关于java - 用于匹配 S3 文件和目录的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18650974/

相关文章:

java - spring initBinder 和 webbindinginitializer 示例

java - Java 中的大数

regex - 两个看似相同的 sed 命令,一个有效,另一个无效。你能告诉我为什么吗?

javascript - Javascript 中的正则表达式没有它应该的那么贪婪?

javascript - 在 Javascript 中将 $(美元符号)添加到多个数字

java - Java 中替换字符串时遇到问题

java - 如何在 Java 中使用 toString 方法?

java - 在 Java 中处理异常或抛出异常

sql - 每行的正则表达式的匹配计数

java - grakn.ai安装报错: Could not find or load main class ai. grakn.client.Client