Maison > Java > javaDidacticiel > Comment utiliser la datetime et les expressions régulières en Java ?

Comment utiliser la datetime et les expressions régulières en Java ?

WBOY
Libérer: 2023-05-07 19:25:06
avant
995 Les gens l'ont consulté

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

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

LocalDate today = LocalDate.now();
LocalDate myBirthday = LocalDate.of(2000, Month.JANUARY, 1);
Copier après la connexion

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

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

LocalTime now = LocalTime.now();
LocalTime sixThirty = LocalTime.of(6, 30);
Copier après la connexion

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

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

LocalDateTime now = LocalDateTime.now();
LocalDateTime dateTime = LocalDateTime.of(2023, Month.JANUARY, 1, 6, 30);
Copier après la connexion

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);
Copier après la connexion

5、创建正则表达式对象

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

Pattern pattern = Pattern.compile("regex");
Copier après la connexion

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");
}
Copier après la connexion

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());
}
Copier après la connexion

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);
Copier après la connexion

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");
}
Copier après la connexion

附: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
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal