开发者学堂课程【Java 高级编程:String 类对正则的支持】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:
https://developer.aliyun.com/learning/course/20/detail/335String 类对正则的支持
在进行正则表达式大部分处理的情况下都会基于 String 类来完成,并且在 String 类里面提供有如下与正则有关的操作方法:
No. | 方法名称 | 类型 | 描述 |
01 | | 普通 | 将指定字符串进行正则判断。 |
02 | | 替换全部 | |
03 | | 替换首个 | |
04 | | 正则拆分 | |
05 | |
下面通过一些具体的范例来对正则的使用进行说明。
范例:实现字符串替换(删除掉非字母与数字)
实现字符串的拆分
在正则处理的时候对于拆分与替换的操作相对容易一些, 但是比较麻烦的是数据验证部分。
范例:判断一个数据是否为小数,如果是小数则将其变为 double 类 型
package cn.mldn. demo;
public class JavaAPIDemo
{
public static void main(String[] args) throws Exception {
String str = "100.1" ; 11
要判断的数据
Stringregex = "
\\
d+(
\\.\\d+
)?" ; 11
正则表达式
System. out . println(str.matches(regex));
范例:现在判断一个字符串是否由日期所组成,如果是由日期所组成则将其转为 Date 类型。
需要注意的是,正则表达式无法对里面的内容进行判断,只能够对格式进行判断处理。
范例:判断给定的电话号码是否正确?
.电话号码: 51283346;
电话号码: 01051283346
电话号码: (010)-51283346。
package cn.mldn. demo;
public class JavaAPIDemo
{
public static void main(String[] args) throws Exception
{
String str = "51283346" ;//
要判断的数据
String regex =
“\\d{7,8}”
; 11
正则表达式
System. out . println(str .matches(regex));
既然已经可以使用正则进行验证了,那么下面就可以利用其来实现一个 email 地址格式的验证。
范例:验证 email 格式
email 的用户名可以由字母、数字、所组成; (不应该使用-开头)
email 的域名可以由字母、数字、_、-所组成;
域名的后缀必须是:.cn、.com、 .net、 .com.cn、 .gov;