Home > Java > javaTutorial > body text

How to use datetime and regular expressions in Java?

WBOY
Release: 2023-05-07 19:25:06
forward
953 people have browsed it

1、java.time.LocalDate类表示日期;

你可以使用该类的now()方法获取当前日期,或者使用of()方法创建一个指定日期的实例,例如:

LocalDate today = LocalDate.now();
LocalDate myBirthday = LocalDate.of(2000, Month.JANUARY, 1);
Copy after login

2、java.time.LocalTime类表示时间;

你可以使用该类的now()方法获取当前时间,或者使用of()方法创建一个指定时间的实例,例如:

LocalTime now = LocalTime.now();
LocalTime sixThirty = LocalTime.of(6, 30);
Copy after login

3、java.time.LocalDateTime类表示日期和时间;

你可以使用该类的now()方法获取当前日期和时间,或者使用of()方法创建一个指定日期和时间的实例,例如:

LocalDateTime now = LocalDateTime.now();
LocalDateTime dateTime = LocalDateTime.of(2023, Month.JANUARY, 1, 6, 30);
Copy after login

4、java.time.format.DateTimeFormatter类用于格式化日期和时间;

你可以使用该类的ofPattern()方法创建一个格式化模板,然后使用该模板的format()方法格式化日期和时间,例如:

LocalDateTime now = LocalDateTime.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String formattedDateTime = now.format(formatter);
Copy after login

5、创建正则表达式对象

可以使用java.util.regex.Pattern类创建正则表达式对象,该类提供了compile()方法来编译正则表达式,并返回一个Pattern对象。例如:

Pattern pattern = Pattern.compile("regex");
Copy after login

6、匹配字符串

可以使用Matcher类来匹配字符串,并执行相应的操作,例如:可以使用matches()方法来检查给定的字符串是否与正则表达式匹配

String input = "example string";
Pattern pattern = Pattern.compile("example.*");
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
    System.out.println("Match found");
}
Copy after login

7、查找匹配

可以使用find()方法在给定的输入中查找正则表达式的匹配项。例如:

String input = "example string";
Pattern pattern = Pattern.compile("example.*");
Matcher matcher = pattern.matcher(input);
if (matcher.find()) {
    System.out.println("Match found at index " + matcher.start());
}
Copy after login

8、替换字符串

可以使用replaceAll()方法来替换匹配正则表达式的字符串。例如:

String input = "example string";
Pattern pattern = Pattern.compile("example");
Matcher matcher = pattern.matcher(input);
String output = matcher.replaceAll("replacement");
System.out.println(output);
Copy after login

9、匹配模式

Java中的正则表达式支持许多模式,可以使用这些模式来调整匹配行为。例如,可以使用Pattern.CASE_INSENSITIVE模式来进行不区分大小写的匹配:

String input = "Example String";
Pattern pattern = Pattern.compile("example.*", Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(input);
if (matcher.matches()) {
    System.out.println("Match found");
}
Copy after login

附:java日期正则表达式

// 日期各种格式yyyy-MM-dd HH:mm:ss、 yyyy-MM-dd等
String dateRgx = "(([1-3][0-9]{3})[-]{0,1}(((0[13578]|1[02])[-]{0,1}(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)[-]{0,1}(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8])))\\s\\d{1,2}:\\d{1,2}:\\d{1,2})|(([1-3][0-9]{3})[-]{0,1}(((0[13578]|1[02])[-]{0,1}(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8])))\\s\\d{1,2}:\\d{1,2})|(([1-3][0-9]{3})[-]{0,1}(((0[13578]|1[02])[-]{0,1}(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)[-]{0,1}(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))";
String date1 = "2019-08-28";
String date2 = "abc";
System.out.println(date1.matches(dateRgx));//true
System.out.println(date2.matches(dateRgx));//false
Copy after login

The above is the detailed content of How to use datetime and regular expressions in Java?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:yisu.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template