A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 478883662 中级黑马   /  2015-11-6 00:00  /  278 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1要匹配手机号如13xxx,15xxx,18xxx代码如下

String tel = "13xxxxxxxxx;"

String telReg = "1[358]\\d{9}";

判断boolean flag = tel.matches(telReg);是则返回true否则返回false

2要切割字符串如String str = "dsljeig.asjgioja.asgwgh";

则匹配的字符串是String reg = "\\.";

切割字符串是String [] arr = str.split(reg);

for(String s:arr){

      String str = s;

}

3匹配空格String str = "asetg      awetgw4g      erywyh";

匹配规则:String reg = " +";

判断是否匹配:str.matches(reg);

4匹配String str = "c:adf\\ag\\a.txt";

String reg = "[url=]\\\\[/url]";

String[] arr = str..split(reg);

5按照叠词进行切割

当你想对一个结果重用是你可以把它封装成一个组

String str = "qwdddqaweeeeeeeaeggdsegsdgsssfewghws";

String reg = "(.)\\1+";//(.)代表任意字符1+代表多个相同的字符(叠词)

String [] arr = str.split(reg);

arr={qw,qaw,dsegsdg,fewghws}

6正则表达式(获取)

String str = "ming tian jiu yao fang jia le, shi da jia";

String reg = "<a href="file://\\b[a-z]{3}\\b";//">\\b[a-z]{3}\\b";//取出三个字符的字符串

Pattern p = Pattern.compile(reg);//讲规则封装成对象

Matcher m = p.macher(str);//将正则对象和要作用的字符串相关联,获取匹配器对象

//其实String中的macher方法就是用得Macher中的方法,只不过被string封转后用起来简单,功能单一

while(m.find())

{

      String s = m.group();

}

7练习

String = “我我我....要要....要...学....学...学学....编....编....编....程...编程”;切换成我要学编程

思路如下

1如果只想知道该字符串是否是对错,使用匹配

2想要将已有的字符串替换成另一个字符串,则使用替换

3想要按照自己的方式将字符串换成多个字符串,则使用切割,获取规则以外的字符串

4想要拿到想要获得字符串则使用或缺,或缺规则之内的字符串

具体做法

1先将.去掉

str = str.replaceAll("\\.+"," ");

2再将多个重复的字符转换成一个字符

str = str.replaceAll("(.)\\1+","$1");

邮箱匹配模式:String reg = "[a-zA-Z0-9]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";

8网页爬虫:获取网页中的邮箱地址

public void getHtmlMail(){

      URL = new URL("网页地址");

      URLConnection con = URL.openConnection();

      BufferedReader bufIn = new BufferedReader(new InputStreamReader(con.getInputStream()));

      String line = null;

      String mailreg = "\\w+@\\w+(\\.\\w+)+";

      Pattern p = Pattern.compile(mailreg);

      while((line = bufIn.readLine())!=null){

            Matcher m = p,matcher(line);

            while(m.find()){

                     String s = m.group();

            }

      }

}


1 个回复

倒序浏览
好,学习了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马