我正在尝试编写一个Java方法,它将一个字符串作为参数,如果它与模式匹配,则返回另一个字符串,null
否则返回。图案:
- 以数字开头(1+ 位);然后是
- 冒号(“
:
”);然后是 - 一个空格(“”);然后是
- 任何1+ 个字符的 Java 字符串
因此,一些与此模式匹配的有效字符串:
50: hello
1: d
10938484: 394958558
还有一些与此模式不匹配的字符串:
korfed49
: e4949
6
6:
6:sdjjd4
该方法的一般框架是这样的:
public String extractNumber(String toMatch) {
// If toMatch matches the pattern, extract the first number
// (everything prior to the colon).
// Else, return null.
}
到目前为止,这是我最好的尝试,但我知道我错了:
public String extractNumber(String toMatch) {
// If toMatch matches the pattern, extract the first number
// (everything prior to the colon).
String regex = "???";
if(toMatch.matches(regex))
return toMatch.substring(0, toMatch.indexOf(":"));
// Else, return null.
return null;
}
提前致谢。