gpt4 book ai didi

java - 如何在java中编写更复杂的正则表达式?

转载 作者:行者123 更新时间:2023-11-30 08:06:28 24 4
gpt4 key购买 nike

id 喜欢执行以下规则:

不以空格“”开头,且不超过一个“。” ,不以“.”开头。不以“.”结尾不是 ?/\: ;在文件中。

public static void Invalid(String[] filename){  
for(String s: filename){
String u = s;
try {
u = new String(s.getBytes(), "UTF-8");
System.out.println(u);
} catch (Exception e) {
e.printStackTrace();
}
u=u.replaceAll("[.$]", " ");//.{2,}\\?
u = u.replaceAll("\\s+", "_");
System.out.println(s + " = " + u);
}
}

主要很简单:

  String[] name={"some?thing..txt."};
Invalid(name);

输出:

 some?thing..txt.
some?thing..txt. = some_thing_txt_

我该怎么做?

最佳答案

您可以使用此模式来验证文件名:

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

注意:如果要允许空字符串,请在末尾添加|^$

不确定您到底想如何处理无效文件名。

关于java - 如何在java中编写更复杂的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31027805/

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