首页 > 代码库 > Java正则匹配数字和字母以及空格的组合

Java正则匹配数字和字母以及空格的组合

在一个输入字符串中查找“数字和字母以及空格的组合”,注意,是这三者同时出现,或者只有数字和字母同时出现而没有空格。

比如输入“hg 437 djj  第三款dufwf745 、dfn^894dk大姐夫iPhone 6s&&&&74854”

输出:

hg 437 djj  

dufwf745 

894dk

iPhone 6s

以下代码可以实现

 1 String s = "hg 437 djj  第三款dufwf745 、dfn^894dk大姐夫iPhone 6s&&&&74854"; 2         String pattern = "([A-Za-z]+\\s+[0-9]+[A-Za-z0-9\\s]*|[A-Za-z]+[0-9]+[A-Za-z0-9\\s]*|[0-9]+[A-Za-z]+[A-Za-z0-9\\s]*|[0-9]+\\s+[A-Za-z]+[A-Za-z0-9\\s]*)[^a-zA-Z0-9\\s]*"; 3         Pattern r = Pattern.compile( pattern ); 4         Matcher m = r.matcher( s ); 5  6         ArrayList< String > p = new ArrayList<String>(); 7         while(m.find()) {  8             p.add( m.group(1) ); 9        } 10         11         for( String e:p )12             System.out.println(e);

 

Java正则匹配数字和字母以及空格的组合