我有这个 xml 文件,我正在读取这个字符串,
http://localhost:8080/sdpapi/request/10/notes/611/
我的问题是我怎样才能从这个字符串中得到 611,它是可变的,例如可以是 100000?
拆分字符串
String input = "http://localhost:8080/sdpapi/request/10/notes/611/";
String output = input.split("notes/")[1].split("/")[0];
输出是你需要的值
什么语言?
无论如何,在大多数情况下,它的语法如下:
String.substring(begin, length);
...其中“开始”是字符串 1 中字母的编号。为了从上面的字符串中提取 http,你会写
substring(0, 4);
如果您总是需要最后两个'/'之间的最后一个字符串,您可以使用索引函数检索斜杠的位置(例如@Liran 的答案中所述)。
// 编辑:在 Java 中,子字符串的第二个参数不是长度,而是 endIndex:
String s = "http://localhost:8080/sdpapi/request/10/notes/611/";
s.substring(46, s.lastIndexOf('/'));
好吧,这取决于你用什么语言编写......例如在 c# 中
string s = @"http://localhost:8080/sdpapi/request/10/notes/611/";
s.SubString(s.LastIndexOf('/'));
或者
Path.GetFileName(s);
对于java
new File(s).getName();
这取决于您使用的编程语言,但正则表达式在大多数情况下应该是相同的:
/(\d+)\/$/