hhmmssSSS正则表达式
时间: 2024-01-23 11:15:34 浏览: 115
以下是一个Java正则表达式匹配字符串并提取hhmmssSSS格式的例子:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.text.SimpleDateFormat;
import java.util.Date;
public class RegexExample {
public static void main(String[] args) {
String fileName1 = "LB7_RCD_50484_20211018_152054_442_S";
String fileName2 = "S2_AF131B-TFK5_13082020_145843748 000";
// 定义正则表达式
String regex = "\\d{2}(\\d{2})(\\d{2})(\\d{3})";
// 创建Pattern对象
Pattern pattern = Pattern.compile(regex);
// 匹配文件名1
Matcher matcher1 = pattern.matcher(fileName1);
if (matcher1.find()) {
// 提取时间部分
String timeString = matcher1.group();
// 转换为Date对象
SimpleDateFormat sdf = new SimpleDateFormat("HHmmssSSS");
try {
Date date = sdf.parse(timeString);
// 转换为String格式输出
String formattedTime = sdf.format(date);
System.out.println(formattedTime);
} catch (Exception e) {
e.printStackTrace();
}
}
// 匹配文件名2
Matcher matcher2 = pattern.matcher(fileName2);
if (matcher2.find()) {
// 提取时间部分
String timeString = matcher2.group();
// 转换为Date对象
SimpleDateFormat sdf = new SimpleDateFormat("HHmmssSSS");
try {
Date date = sdf.parse(timeString);
// 转换为String格式输出
String formattedTime = sdf.format(date);
System.out.println(formattedTime);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
```
输出结果为:
```
152054442
145843748
```
阅读全文