前天稍微了解了一下正则表达式,发现直接在eclipse上可以用,于是就试了一下。
网上有这个比较多的解释,因为对于我来说目前不需要太深入,了解了解就行了。
对于爬取一些特别的东西,可以参考最全的常用正则表达式大全
另外,匹配两个字符串A与B中间的字符串包含A与B:
表达式: A.?B(“.“表示任意字符,“?”表示匹配0个或多个)
示例: Awww.apizl.comB
结果: Awww.apizl.comB
匹配两个字符串A与B中间的字符串包含A但是不包含B:
表达式: A.?(?=B)
示例: Awww.apizl.comB
结果: Awww.apizl.com
匹配两个字符串A与B中间的字符串且不包含A与B:
表达式: (?<=A).*?(?=B)
示例: Awww.baidu.comB
结果: www.baidu.com
如果要不考虑换行符和回车就要在表达式前面加上 (?s)
才行
**System.getProperty(“line.separator”)**是换行符·的另外一个表达,在Linux和Window系统上可能"\n"会有不同的意思,这样写的话,则剔除了平台无关性,写一次代码在Linux上和Window上都能够运行。
public class test3 {
//public static final String LINE = System.getProperty("line.separator");//这是换行符的另外一个表达
public static void main(String[] args) throws IOException {
try {
FileInputStream file = new FileInputStream("D://Desktop//2013版理论教学大纲汇总(计算机专业)-修改稿66门[系统导出2015-3-12].txt");
BufferedInputStream Bfile = new BufferedInputStream(file);
byte[] b = new byte[1024];
String result = "";
int bytesRead=0;
while((