Nig*_*der 0 java string ends-with
我有以下字符串
http://store.aqa.org.uk/qual/newgcse/pdf/AQA-4695-W-SP.PDF
Run Code Online (Sandbox Code Playgroud)
我想要它,所以如果用户忘记输入http://或.PDF,程序将自动纠正此问题.因此,我尝试了这段代码
if (!str.startsWith("http://")) { // correct forgetting to add 'http://'
str = "http://" + str;
}
System.out.println(str);
if (!str.endsWith("\\Q.PDF\\E")) {
str = str + "\\Q.pdf\\E";
}
Run Code Online (Sandbox Code Playgroud)
但是,即使我输入正确的字符串,http://store.aqa.org.uk/qual/newgcse/pdf/AQA-4695-W-SP.PDF
输出也是如此.
http://store.aqa.org.uk/qual/newgcse/pdf/AQA-4695-W-SP.PDF\Q.pdf\E
Run Code Online (Sandbox Code Playgroud)
为什么?为什么要添加另一个 '.PDF'?
T.J*_*der 15
因为http://store.aqa.org.uk/qual/newgcse/pdf/AQA-4695-W-SP.PDF没有\Q.PDF\E到底.在字符串文字中,\\为您提供反斜杠.因此"\\Q.PDF\\E"是\Q.PDF\E -一个反斜杠,随后Q,后面跟着一个点,之后PDF,紧接着又反斜杠,其次是E.
如果你想看看字符串是否结束.PDF,只需使用
if (!str.endsWith(".PDF"))
Run Code Online (Sandbox Code Playgroud)
当然,那是区分大小写的.如果您希望它不区分大小写,可能:
if (!str.toLowerCase().endsWith(".pdf"))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10156 次 |
| 最近记录: |