正则表达式

来源:互联网 发布:淘宝上哪家小叶紫檀好 编辑:程序博客网 时间:2024/06/08 08:19
正则表达式的语法规则:


字符: 格式 例如
x 代表的是字符x,  "a" --> 需要匹配的内容就是a    12345 -->***45  "123"
\\  代表的是反斜线字符'\'"\\" --> 需要匹配的内容就是\
\t 制表符"\t" --> 对应的效果就是产生一个制表符的空间
\n  换行符 "\n" --> 对应的效果就是换行,光标在原有位置的下一行
\r  回车符 "\r" --> 对应的效果就死回车后的效果,光标来到下一行行首

字符类 :格式例如
[abc] 代表的是a、b 或 c "[abc]" --> 需要匹配的内容就是字符a,或者字符b,或字符c的一个
[^abc]代表的是除了 a、b 或 c以外的任何字符 "[^abc]" -->需要匹配的内容就是不是字符a,或者不是字符b,或不是字符c的任意一个字符
[a-zA-Z]代表的是a 到 z 或 A 到 Z,两头的字母包括在内"[a-zA-Z]"-->需要匹配的是一个大写或者小写字母
[0-9]代表的是 0到9数字,   两头的数字包括在内"[0-9]"-->需要匹配的是一个数字  
[a-zA-Z_0-9]代表的字母或者数字或者下划线(单词字符)[a-zA-Z_0-9] --> 需求匹配的是一个字母或者是一个数字或一个下滑线

边界匹配器: 格式 例如
^ 行的开头 ^[abc][0-9]$ --> 需要匹配的内容从[abc]这个位置开始, 相当于左双引号
$ 行的结尾 ^[abc][0-9]$ --> 需要匹配的内容以[0-9]这个结束, 相当于右双引号
\b 单词边界 "\\b[abc]\\b"  --> 代表的是字母a、b、c的左右两边需要的是非单词字符
wo shi lkp haha a! 
预定义字符类
. 任何字符 就想使用.的话  "\\."来实现
\d 数字:[0-9] 
\w 单词字符:[a-zA-Z_0-9] 

                                       
数量词:格式 例如:
X? X,一次或一次也没有 "a?" ---> 需要匹配的内容是一个字符a,或者一个a都没有
X* X,零次或多次 "a*" ---> 需要匹配的内容是多个字符a,或者一个a都没有
X+ X,一次或多次 "a+" ---> 需要匹配的内容是多个字符a,或者一个a
X{n} X,恰好 n 次 "a{5}"--> 需要匹配的内容是5个字符a
X{n,} X,至少 n 次 "a{5, }"--> 需要匹配的内容是最少有5个字符a
X{n,m} X,至少 n 次,但是不超过 m 次 "a{5,8}"--> 需要匹配的内容是有5个字符a 到 8个字符a之间

--------------------------
判断功能
public boolean matches(String regex) 该字符串是否与正则表达式规则相匹配
分割功能
  public String[] split(String regex) 将字符串使用正则表达式进行分割,返回一个分割后的字符串数组
替换功能:
  public String replaceAll(String regex, String replacement) 将满足正则表达式规则的字符串内容,用给定的新字符串进行替换,
获取功能:
Pattern: 正则表达式对象 
方法:
public static Pattern compile(String regex) 将正则表达式字符串 编译成正则表达式对象
public Matcher matcher(CharSequence input) 使用正则表达式对象与给定的数据进行匹配,将结果封装成对象,匹配器对象
Matcher: 匹配器对象
public boolean find() 在指定的字符串中,查找是否有满足正则表达式条件的子字符串信息
public String group() 获取满足正则表达式条件的子字符串
public boolean matches()获取指定的字符串与正则表达式规则匹配的结果

-------------------------
Character: char包装类
public static boolean isUpperCase(char ch) 判断给定字符是否为大写字母
public static boolean isLowerCase(char ch) 判断给定字符是否为小写字母
public static boolean isDigit(char ch) 判断给定字符是否为数字
public static char toUpperCase(char ch) 把给定的字符转换成大写
public static char toLowerCase(char ch) 把给定的字符 转换成小写

Math: 数学工具类
public static double abs(double a)返回 double 值的绝对值
public static double cbrt(double a)返回 double 值的立方根
public static double ceil(double a)返回比参数值大的最小整数
public static double floor(double a)返回比参数值小的最大整数
public static double max(double a, double b)返回两个 double 值中较大的一个
public static double min(double a, double b)返回两个 double 值中较小的一个
public static double pow(double a, double b)返回a的b次方
public static double random() 返回 0.0<=x<1.0 之间的随机小数
public static long round(double a) 四舍五入
public static double sqrt(double a)返回正确舍入的 double 值的正平方根

Random: 随机数类
构造方法:
public Random():
使用默认的种子来创建随机数对象, 默认的种子就是当前系统时间的毫秒值
public Random(long seed):
使用指定的种子来创建随机数对象
方法:
public int nextInt(): 返回一个随机的int范围内的整数
public int nextInt(int n)返回一个,在 0(包括)和指定值(不包括)之间int随机数

System:
成员变量:
public static final InputStream in
标准输入流, 对应的就是 键盘输入
public static final PrintStream out
标准输出流,对应的就是 显示器输出
方法:
public static void exit(int status) 
终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止
public static long currentTimeMillis()
返回当前系统时间的毫秒值
public static void gc() 
运行垃圾回收器,调用 gc 方法暗示着 Java 虚拟机做了一些努力来回收未用对象,以便能够快速地重用这些对象当前占用的内存
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束
参数:
src - 源数组。
srcPos - 源数组中的起始位置。
dest - 目标数组。
destPos - 目标数据中的起始位置。
length - 要复制的数组元素的数量。

BigInteger:超出int范围的整数
public BigInteger add(BigInteger val) 加法
public BigInteger subtract(BigInteger val) 减法
public BigInteger multiply(BigInteger val) 乘法
public BigInteger divide(BigInteger val) 除法,返货商
public BigInteger[] divideAndRemainder(BigInteger val) 除法,返回商和余数

BigDecimal: 精确的小数
public BigDecimal add(BigDecimal augend) //加法
public BigDecimal subtract(BigDecimal subtrahend) 减法
public BigDecimal multiply(BigDecimal multiplicand) 乘法
public BigDecimal divide(BigDecimal divisor) //除法
  public BigDecimal divide(BigDecimal divisor,int scale,int roundingMode)//除法,带有保留指定小数点位数的四舍五入的方法

Date: 日期/时间类
构造方法
public Date()// 系统当前日期时间
public Date(long date) 得到一个1970年1月1日 0点这个时间基础上,加上参数date 毫秒值对应的日期时间
成员方法
public long getTime() 获取日期/时间对应的毫秒值
public void setTime(long time) 通过毫秒值设置日期/时间

DateFormat:是日期/时间格式化子类的抽象类, 使用其子类SimpleDateFormat 实例化
SimpleDateFormat
构造方法
public SimpleDateFormat() 默认的格式化操作
public SimpleDateFormat(String pattern) 按照指定的格式,进行日期格式化

日期和时间模式
y  年  
M  年中的月份  
d  月份中的天数 
H  一天中的小时数(0-23) 
m  小时中的分钟数 
s  分钟中的秒数 
S  毫秒数 

成员方法
public final String format(Date date) 把日期 格式化成字符串
public Date parse(String source) 把日期字符串 转换成 日期对象



Calendar: 日历类
public static Calendar getInstance() 获取到一个日历类对象
public int get(int field) 返回指定日期字段所对应的值
public void add(int field,int amount) 更新指定日期字段的值
public void set(int field,  int value)将给定的日历字段设置为给定值
public final void set(int year,int month,int date)设置指定日期字段的值
0 0
原创粉丝点击