开发者学堂课程【Java 高级编程:String 类对正则的支持】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/20/detail/335
String 类对正则的支持
在进行正则表达式大部分处理的情况下都会基于 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;