字符串“36周1天”,我想取“周”之前的字符串与“周”与“天”之间的字符串
时间: 2023-10-30 16:06:06 浏览: 32
要从字符串"36周1天"中提取出"36"和"1天"这两部分字符串,可以使用正则表达式来匹配并提取所需的内容。
以下是一个示例代码:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StringSubstringExample {
public static void main(String[] args) {
String input = "36周1天";
// 匹配并提取字符串
Pattern pattern = Pattern.compile("(\\d+)周(\\d+天)");
Matcher matcher = pattern.matcher(input);
if (matcher.find()) {
String weeks = matcher.group(1);
String days = matcher.group(2);
System.out.println("周之前的字符串: " + weeks);
System.out.println("周和天之间的字符串: " + days);
}
}
}
```
运行上述代码,你将会看到如下输出:
```
周之前的字符串: 36
周和天之间的字符串: 1天
```
在示例代码中,我们使用正则表达式"(\\d+)周(\\d+天)"来匹配字符串。其中,"(\\d+)"表示匹配一个或多个数字,"周"和"天"表示匹配这两个字符字面量。
通过Pattern和Matcher类,我们可以进行正则表达式的匹配和提取。通过调用Matcher的find方法,我们可以找到第一个匹配项,并通过group方法提取所需的字符串。
你可以根据具体需求调整正则表达式,以适应不同格式的输入字符串。