Suu*_*ule 6 java regex string java-8
你有什么想法我怎么能在字符串的第二个点之后得到第一个字符.
String str1 = "test.1231.asdasd.cccc.2.a.2";
String str2 = "aaa.1.22224.sadsada";
Run Code Online (Sandbox Code Playgroud)
在第一种情况下,我应该得到a
第二种情况2
.我想到用点划分字符串,并提取第三个元素的第一个字符.但它似乎很复杂,我认为有更好的方法.
Eug*_*ene 10
这个正则表达式怎么样?
Pattern p = Pattern.compile(".+?\\..+?\\.(\\w)");
Matcher m = p.matcher(str1);
if (m.find()) {
System.out.println(m.group(1));
}
Run Code Online (Sandbox Code Playgroud)
正则表达式说:以非贪婪的方式(.+?
)一次或多次查找任何东西,必须后跟一个点(\\.
),而不是以非贪婪的方式(.+?
)后跟一个点(\\.
)一次或多次.在匹配之后,取第一组中的第一个单词字符((\\w)
).
归档时间: |
|
查看次数: |
1189 次 |
最近记录: |