(JAVA)正则表达式

正则表达式的常见规则
1.字符类[abc]:字符必须是abc其中一个[a-z]:字符必须是小写字母[A-Z]:字符必须是大写字母[a-zA-Z]:字符必须是字母[^abc]:字符不能是abc其中一个[^a-z]:字符不能是小写字母[^a-zA-Z]:字符不能是字母2.预定义字符类.   匹配任意字符\d  匹配数字\D  匹配非数字\w  匹配单词字符   \\w==[a-zA-Z0-9_] 数字字母下划线\W  匹配非单词字符3.数量词x*   字符出现0次或多次x?  字符出现一次或一次也没有x+   字符出现一次或多次x{n}  字符刚好出现n次x{n,}   字符最少出现n次x{n,m]  字符最少出现n次,最多出现m次4.边界匹配^   匹配行的开头$   匹配行的结尾\b  匹配英语单词
package com.book.lite;
import java.util.regex.*;/*** @author zhangyu* @date 2021年08月17日 12:38 下午* 正则表达式* 1.正常运用* 2.切割slit()* 3.替换replaceAll(规则,替换后内容)* 4.正则表达式的获取功能(查看自己的正则表达式是否正确):实现步骤* import java.util.regex.*;*      1.使用Pattern类的静态方法compile,将正则规则预匹配*      static Pattern compile(正则规则)*      返回Pattern类对象**      2.使用Pattern类的非静态方法matcher,将正则规则与查找的字符串匹配*      Matcher matcher(字符串)*      返回Matcher类的对象**      3.使用Matcher类的方法find() 查找符合规则的字符串,如果有返回true**      5.使用Matcher类的方法group() 获取内容**/
public class RegexDemo {public static void main(String[] args) {
//        System.out.println(methon_1());
//        System.out.println(methon_2());
//        System.out.println(methon_3());
//        System.out.println(methon_4());
//        System.out.println(methon_5());
//        System.out.println(methon_6());
//        methon_7();
//        methon_8();
//        methon_9();methon_10();}/**** @author zhangyu* @date 2021/8/17 12:41 下午* @return boolean* 判断一个四个字母的字符串中间字母是否是元音*/public static boolean methon_1(){String a = "bopl";boolean A = a.matches("b[aeiouAEIOU]{2,}l");return A;}/**** @author zhangyu* @date 2021/8/17 11:31 下午* @return boolean* 判断一个字符串中是否含有数字*/public static boolean methon_2(){String b = "a2c";boolean B =  b.matches("a[\\d]c");return B;}/**** @author zhangyu* @date 2021/8/17 11:43 下午* @return boolean* 判断字符串中无数字*/public static boolean methon_3(){String c = "asd";boolean C = c.matches("[a-z][\\D][a-z]");return C;}/**** @author zhangyu* @date 2021/8/17 11:46 下午* @return boolean* 判断一个字符串中,某个字符只能出现一次,或一次都没有*/public static boolean methon_4(){String d = "ab";boolean D = d.matches("a?b?");return D;}/**** @author zhangyu* @date 2021/8/17 11:51 下午* @return boolean* 判断一个字符串中,某个字符串可有可无*/public static boolean methon_5(){String e = "a";boolean E = e.matches("ab*");return  E;}/**** @author zhangyu* @date 2021/8/17 11:55 下午* @return boolean* 判断一个字符串中,某个字符至少出现一次*/public static boolean methon_6(){String f = "look";boolean F = f.matches("o+");return F;}/**** @author zhangyu* @date 2021/8/18 12:07 上午* 使用String类切割功能*/public static void methon_7(){String g = "wergghjkgll";String [] G = g.split("g+");for(int x =0; x < G.length ; x++){System.out.println(G[x]);}}/**** @author zhangyu* @date 2021/8/18 11:32 下午* 使用字符串的替换功能replaceAll() 只有这个方法支持正则*/public static void methon_8(){String h = "sdfghj23nfy5dssldi5";String H = h.replaceAll("\\d","#");System.out.println(H);}/**** @author zhangyu* @date 2021/8/18 11:58 下午* 匹配出一句话中有四个字母的单词*/public static void methon_9(){String str = "what is your name  my name is Alina";Pattern p = Pattern.compile("\\b[a-zA-Z]{4}\\b");Matcher m = p.matcher(str);while (m.find()){System.out.println(m.group());}}public static void methon_10(){String email = "abcd123@asd.com.cn";boolean i = email.matches("[\\w]+@[a-z0-9]+(\\.[a-z]+)+");System.out.println(i);}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/421806.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

巧用“傍术”选择陈列点

割箱 陈列 是一种将包装纸箱割斜角&#xff0c;以露出商品的 陈列 方式&#xff0c;广泛应用在包袋食品及小百货商品。  商超内的位置很多&#xff0c;选择什么样的位置 陈列 产品能够起到最好的效果呢&#xff1f;  首先是要找视觉效果尽可能好的地方。消费者进入商场第一…

(JAVA) * 使用正则表达式,给字符串排序 * 使用数组排序

package com.book.lite;import java.util.Arrays;/*** author zhangyu* date 2021年08月19日 10:49 下午* 使用正则表达式&#xff0c;给字符串排序* 使用数组排序*/ public class RegexDemo1 {public static void main(String[] args) {test();}public static void test(){Str…

python 使用 pip 安装第三方库 导入不成功

本文是什么意思呢&#xff1f; 就是你需要使用一些库安装老师或者网上说的 通过pip 安装下载了第三方库&#xff0c;但是使用 import xxx from xxx import xx &#xff0c;pycharm ide 导入的下面还有红色波浪线&#xff0c;导入不成功。 这是什么原因&#xff1f; 这是pyc…

LLVM每日谈之十三 使用LLVM自带的PASS

作者&#xff1a;snsn1984 PS&#xff1a;最近一段时间&#xff0c;投入在LLVM上的时间有些减少。差点把对它的研究断掉&#xff0c;今天开始继续。对LLVM的研究需要很长一段时间的坚持不懈才可以彻底搞明白。 前面已经介绍过如何写自己的PASS&#xff0c;并且也针对一个简单的…

(JAVA)Math类

package com.book.lite;import java.util.regex.Matcher;/*** author zhangyu* date 2021年08月19日 11:34 下午* 1.绝对值*/ public class MathDemo {public static void main(String[] args) {System.out.println(methon_1());System.out.println(methon_2());System.out.pri…

Android学习笔记-判断手机外部存储是否可读写

通过调用Environment的getExternalStorageState()方法来判断外部存储的状态: /* 查检外部存储读取与写入功能是否可用 */ public boolean isExternalStorageWritable() {String state Environment.getExternalStorageState();if (Environment.MEDIA_MOUNTED.equals(state)) {r…

寄存器指令MIPS 寄存器介绍

之前朋友几篇文章介绍了改寄存器指令的文章. 关联文章的地址 MIPS有32个通用寄存器&#xff08;$0-$31&#xff09;&#xff0c;各寄存器的功能及汇编程序中应用约定如下&#xff1a; 下表描述32个通用寄存器的别名和用处 REGISTER NAME USAGE $0 $zero 常量0(constant va…

(JAVA)Random类

package com.book.lite;import java.util.Random;/*** author zhangyu* date 2021年08月19日 11:57 下午* Math.random()获取随机数&#xff0c;底层调用Random类* Random类* 1.构造方法* 2.nextInt(int n )*/public class RandomDemo {public static void main(String[] args)…

SIFT算法

介绍这个算法的网上的博客很多&#xff0c;这个百度一下就有很多篇&#xff0c;我写一下我的认识。 前面考虑的一个图像的特征点是角点&#xff0c;这边提出了&#xff0c;图像的特征点可以是一个斑点&#xff0c;就像 明显的就是部分向日葵的原型就是一个特征&#xff0c;而这…

(JAVA)超大整数运算

package com.book.lite;import java.math.BigInteger;/*** author zhangyu* date 2021年08月21日 4:27 下午* Biginterger类&#xff0c;超大数的四则运算*/ public class BigIntegerDemo {public static void main(String[] args) {methon_3();}public static BigInteger meth…

PHP中过滤数组中的元素

演示使用自定义函数删除数组中的偶数元素。 <?php function myfunc(&$arr){//自定义一个过滤函数$jcount($arr);for($i0;$i<$j;$i){if($arr[$i]%20)unset($arr[$i]);} }$arrarray(23,14,37,263,244,379,100,153,150);//定义一个数组 echo 数组进行过滤之前的信息&am…

(JAVA)超大小数运算

package com.book.lite;import java.math.BigDecimal;/*** author zhangyu* date 2021年08月21日 4:56* 双精度大数据运算* divide()除法运算。* public BigDecimal divide(BigDecimal divisor, int scale, int roundingMode) (被除数&#xff0c;保留位数&#xff0c;舍入方法…

(JAVA)格式化输出日期

1.使用子类SimpleDateFormet() 2.使用父类DateFormet package com.book.lite;import javafx.scene.input.DataFormat;import java.text.*; import java.util.Date;/*** author zhangyu* date 2021年08月21日 5:23 下午* Date 类&#xff1a;输出系统日期* 1.空参构造器* 2.传…

windows下使用MinGW+msys编译ffmpeg

本文参考了网络上的不少文章&#xff0c;但由于版本环境的问题参考文章并不能直接指导编译&#xff0c;本文吸收多方经验&#xff0c;并在自己多次编译实验的基础上写成&#xff0c;欢迎转载&#xff0c;请注名出处。 FFmpeg是在Linux平台下开发的&#xff0c;但它同样可以在…

(JAVA)Calender类

package com.book.lite;import sun.misc.ClassFileTransformer;import java.util.Calendar;/*** author zhangyu* date 2021年08月22日 4:22 下午* java.util.Calender类&#xff0c; 生活中的日历进行对象封装* 1.abstract Calender类* 2.使用子类GregorianCalendar类 数据类…

Schema evolution in Avro, Protocol Buffers and Thrift

http://martin.kleppmann.com/2012/12/05/schema-evolution-in-avro-protocol-buffers-thrift.html 当想要数据, 比如对象或其他类型的, 存到文件或是通过网络传输, 需要面对的问题是序列化问题 对于序列化, 当然各个语言都提供相应的包, 比如, Java serialization, Ruby’s ma…