gpt4 book ai didi

java - 字符串以 DRIVELETTER 开头 :\

转载 作者:行者123 更新时间:2023-12-01 07:09:46 24 4
gpt4 key购买 nike

Java String.startsWith() 中的快速问题需要某种通配符。

我需要检查链接是否以 http:// 或本地驱动器(c:\,d:\ 开头> 等)但我不知道驱动器号。

所以我想我需要类似 myString.startsWith("?:\\")

有什么想法吗?

干杯

为此欢呼,但我认为我需要在此基础上再做一点。

我现在需要满足

1.http://
2.ftp://
3.file:///
4.c:\
5.\\

这有点过分了,但我们想确保我们已经捕获了它们。

我有

if(!link.toLowerCase().matches("^[a-z]+:[\\/]+.*")) {

适用于任何一个或多个字符,后跟 :(例如 http:、ftp:、C:) 涵盖 1-4,但我无法满足\\

我能得到的最接近的是这个(它有效,但最好将它放入正则表达式中)。

if(!link.toLowerCase().startsWith("\\") && !link.toLowerCase().matches("^[a-z]+:[\\/]+.*")) {

最佳答案

您将需要 regular expressionstartsWith 不支持:

^[a-zA-Z]:\\\\.*

^ ^ ^ ^
| | | |
| | | everything is accepted after the drive letter
| | the backslash (must be escaped in regex and in string itself)
| a letter between A-Z (upper and lowercase)
start of the line

然后你可以使用 yourString.matches("^[a-zA-Z]:\\\\")

关于java - 字符串以 DRIVELETTER 开头 :\,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16817354/

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