字符串:matches.method不清楚的东西

时间:2014-07-27 20:32:08

标签: java regex string

嗨我正在复制一个网络代码,一个程序,但有一些地方...... 我理解一切,除了这个,请告诉我关于那个的一切......

".*\\d.*"

这是漏洞代码

public void checkS(String w){
    this.w = w;              
do{ 
    if(w.matches(".*\\d.*")){              
            System.out.println("Contains a number,try again....(ya aint 2 Pac) ");              
        } else{           
            System.out.println("Allright "+">"+w+"<"+" lets go one and start the shit...");
            runL=3;
        }
}while(runL==2);    }

如果我想要搜索:[&#34;%&amp; /?

,我会在[]之间写东西。

请给我一个关于这个主题的消息来源我已经搜索但是没有找到有用的东西

如果我的英语不好请告诉:D

2 个答案:

答案 0 :(得分:0)

String.matches方法执行正则表达式匹配。有很多好的资源描述了正则表达式。在此特定情况下,".*\\d.*"将匹配字符串中任何位置至少包含1位\d的内容。

答案 1 :(得分:0)

正则表达式.*\\d.*执行以下操作:

.*:匹配任何字符(*)的零或更多(.

\\d\d匹配一个号码,但您必须添加额外的&#39; \&#39;因为在java中,两个反斜杠(\\)变为一个。这称为转义

.*:与前面提到的相同

总而言之,它将匹配任何字符串,该字符串包含零个或多个字符,一个数字,然后是零个或多个字符。

一些例子:

abasdfadsf7asdga

foo87980890bar

this is a str1ng that matches!

7