介绍:
正则表达式Regex,可以理解为一个限定规则,例如在一大堆数据中你要获取其中的邮箱,可以制定一个关于邮箱的规则,再在数据中用这个规则去匹配。
示例:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class test {
public static void main(String[] args){
String qqRegex="[1-9]\\d{4,11}";
String telRegex="[1][3-9]\\d{9}";
String emailRegex="\\w+[@][\\w&&[^_]]+(\\.[a-z]{2,3})+";
System.out.println("16046@qq.com".matches(emailRegex));
}
}
qqRegex即为关于qq的规则,中括号 [ ] 表示对应一个字符, 如 [0-9] 表示校检数据中的第一个字符应对应数字,否则返回false,[^0-9 ]表示非数字,\\d等可以理解为缩写,意义可看下图,花括号{ }表示规则对应的数量如 [a-z]{2,3}表示对应最少2个,最多3个小写字母,其中还有&&表示取交集,|表示取并集。
规则一览:
用正则表达式爬取示例 :