如何在特定字符串之前获取空间索引?

时间:2014-10-20 16:28:08

标签: java regex string

我有以下字符串

String = "Test1 Test2 Test3 Test4 Test5 Test6  15min"

我想在字符串“min”

之前获取字符空间的索引

有一种类似String.lastIndexOf(" ")的方法,却找不到相关的东西吗?

修改: -

基本上想要在第一分钟之前找到最后一个空格

3 个答案:

答案 0 :(得分:5)

首先获取您想要获取空间的字符串的位置,然后使用该位置获取最接近的空间位置

int idx1 = str.indexOf("min");
int lastSpace = str.lastIndexOf(" ", idx1);

答案 1 :(得分:3)

您可以使用正则表达式执行此操作 - 搜索空格后跟非空格字符,后跟min,如下所示:

Pattern pattern = Pattern.compile("\\s\\S*min");
Matcher matcher = pattern.matcher("Test1 Test2 Test3 Test4 Test5 Test6 15min");
// Check all occurrences
if (matcher.find()) {
    System.out.print("Start index: " + matcher.start());
}

这将打印36,即15min之前的最后一个空格字符的索引。

Demo.

答案 2 :(得分:0)

您可以将代码放在名为string:

的id的html div中
var data = $('#string').text();
var arr = data.split(' ');
$("#string").html("<span>"+arr[0] + "</span></br>" + arr[1]+"/"+arr[2]);

当你拆分这个字符串---&gt; Test1 Test2 Test3 Test4 Test5 Test6 15min on / p

var myString = "Test1 Test2 Test3 Test4 Test5 Test6  15min";
var arr = myString.split(' ');

您将获得一个大小为3的数组

arr[0] --> test1
arr[1] --> test2
arr[2] --> text3
....