码迷,mamicode.com
首页 > 其他好文 > 详细

Scanner几个问题与正则简介

时间:2018-05-12 18:22:35      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:子序列   返回   stat   one   tail   做了   inpu   str   []   

  Pre:最近做了头条的在线笔试,对Scanner输入的处理有些特殊,当时是一脸懵逼态,遂由此随笔(/@_@\),java小白,有错难免!

  查了下Scanner的源码,没有头绪,但是其中用到了正则的知识,遂简单回顾下正则的使用:

Part1:正则使用简介                    

  1、正则表达式主要是针对字符串的一种规则(以字符串表示);主要功能有以下:

  • 匹配:注意是完全匹配, boolean matches(String regex)  (我之前总是一不小心就理解成包含contains)。
  • 切割:返回是字符串组,  String[] split(String regex)
  • 替换:多种替换方法如: String replace(char oldChar, char newChar)
  • 获取:需要Pattern类和Matcher类支持,
    • Pattern类:模式,字符串形式的正则首先被编译为此类的实例
      • static Pattern compile(String regex)//获取模式 
      • Matcher matcher(CharSequence input)//获取匹配器 
    • Matcher类:匹配器,解释Pattern并执行匹配操作。
      • boolean find()  //是否有下一个可匹配的子序列 
      • String group()   //返回匹配的子序列
      • int end()        //返回最后一个匹配位置的下一个位置

  2、java实例:

技术分享图片
public class Test {
    public static void main(String[] args) {
        String reg="abc";
        String str="abcdefabcdefababc";
        Pattern p=Pattern.compile(reg);
        Matcher m=p.matcher(str);
        while(m.find()){
            System.out.println(m.group()+"起始于:"+m.start()+",结束于:"+(m.end()-1));
        }
    }
}
abc起始于:0,结束于:2
abc起始于:6,结束于:8
abc起始于:14,结束于:16
View Code

 https://blog.csdn.net/FFFLLLLLL/article/details/51615204

https://blog.csdn.net/qq_24877569/article/details/52507391

  

Scanner几个问题与正则简介

标签:子序列   返回   stat   one   tail   做了   inpu   str   []   

原文地址:https://www.cnblogs.com/whtblog/p/9029208.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!