我需要在字符串中获取第一个字母的位置.
按照一个基本的例子.第一个字母是T,所以我需要知道T我可以使用的位置indexOf("T").
我想通过正则表达式获得第一个字母,而不是添加硬编码的字母(T).
提前致谢.
public class RegexMatches {
public static void main(String args[]) {
String line = "000 1 This is my message";
int first = line.indexOf("T");
line = line.substring(first, line.length());
System.out.println(line);
}
}
Run Code Online (Sandbox Code Playgroud)
如果,正如我所解释的那样,您正在通过正则表达式查找句子中的第一个字母字符或其索引,这是一个示例:
String line = "000 1 This is my message";
Pattern p = Pattern.compile("\\p{Alpha}");
Matcher m = p.matcher(line);
if (m.find()) {
System.out.println(m.group());
System.out.println("At: " + m.start());
}
Run Code Online (Sandbox Code Playgroud)
产量
Found: T
At: 6
Run Code Online (Sandbox Code Playgroud)
如果我正确阅读了Java文档,那么您正在寻找start匹配对象的方法:
String line = "000 1 This is my message";
Pattern p = Pattern.compile("\\p{L}");
Matcher m = p.matcher(line);
if (m.find()) {
System.out.println(m.start());
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8636 次 |
| 最近记录: |