`
liugf
  • 浏览: 2842 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

读取文件and正则表达式提取

阅读更多
import java.io.*;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class FileToString {
	public static String readFile(String fileName) {
		String output = "";

		File file = new File(fileName);

		if (file.exists()) {
			if (file.isFile()) {
				try {
					BufferedReader input = new BufferedReader(new FileReader(
							file));
					StringBuffer buffer = new StringBuffer();
					String text;

					while ((text = input.readLine()) != null)
						buffer.append(text + "\n");

					output = buffer.toString();
				} catch (IOException ioException) {
					System.err.println("File Error!");

				}
			} else if (file.isDirectory()) {
				String[] dir = file.list();
				output += "Directory contents:\n";

				for (int i = 0; i < dir.length; i++) {
					output += dir[i] + "\n";
				}
			}
		} else {
			System.err.println("Does not exist!");
		}
		return output;
	}

	public static void main(String args[]) {
		String str = readFile("D:/style.txt");
		Pattern pattern = Pattern.compile("<a  href=\"(.+?)\"  rel=\"prettyPhoto");
		Matcher matcher = pattern.matcher(str);
		Map<String, String> map=new LinkedHashMap<String, String>();		
		while (matcher.find()) {
			map.put(matcher.group(1), matcher.group(1));			
		}
		Iterator iter = map.entrySet().iterator(); 
		while (iter.hasNext()) { 
		    Map.Entry entry = (Map.Entry) iter.next(); 
		    Object key = entry.getKey(); 
		    System.out.println(entry.getValue());
		} 	
	}
}
分享到:
评论

相关推荐

    一个java正则表达式工具类源代码.zip(内含Regexp.java文件)

    * Summary of regular-expression constructs 正则表达式结构简介: * Construct Matches * Characters 字符: * x The character x x 字符 x * \\ The ...

    2016年杭电笔试题第二题解法(Ruby解法)

    此题目不仅考察了应聘者的编程能力,还检验了他们处理文件读取、正则表达式匹配等技能。 #### 题目要求 题目要求编写一个程序,能够从指定的文本文件中读取所有数字,并计算这些数字的总和。这里提供的是一种使用...

    Linux Grep命令使用的详细介绍

    grep的工作原理是读取指定文件或标准输入,根据提供的模式(正则表达式)搜索文本,找到匹配的行并将其输出到标准输出,原始文件不会被修改。 grep命令的正则表达式元字符集包含了一些基本元素,例如: - `^`:匹配...

    Perl脚本提取掉话问题的掉话原因

    `HelperFunctions4.pm`文件很可能是辅助函数库,包含了用于处理日志数据的通用功能,如读取文件、格式化输出、错误处理等。这些函数可以被`Call_Drop.pl`脚本调用,提高代码的复用性和可维护性。 在`call.isf`和`...

    纯java读取excel2007以后文件

    由于Excel的XML结构相对复杂,可能需要配合正则表达式来提取特定信息。但这不是推荐的方法,因为POI库提供了更高级的抽象,能更好地处理Excel的特性。 7. **压缩和解压**: 对于OpenXML文件的处理,你还需要了解...

    zifuchuan.rar_统计 串中 单词 个数

    这段代码首先读取文件`www.pudn.com.txt`中的内容,然后使用正则表达式找到所有的中文单词,统计它们的个数,并将这些单词存入数组`cArr`。最后,打印出单词总数和数组内容。 通过这种方式,我们可以高效地处理字符...

    vba比较两个配置文件

    配置文件通常包含各种键值对,正则表达式可以帮助我们提取和比较这些配置项。例如,我们可以用正则表达式来匹配特定格式的配置项: ```vba Dim regEx As Object, match As Object Set regEx = CreateObject(...

    python基础教程

    - 使用`read()`、`readline()`和`readlines()`方法读取文件。 - 示例代码演示如何读取文件内容。 #### Python第32课:写文件 - **知识点**: - 写入文件的基本方法,如`write()`。 - 写入模式的选择。 - 示例...

    Sed与awk_中英文高清版

    Awk处理数据时,会按行读取文件,对每一行执行用户定义的动作。这些动作可以是基于特定模式的条件判断,也可以是数据的处理和输出。Awk的强大之处在于它内置了丰富的内建函数,可以轻松处理数值计算、字符串操作以及...

    python实现基本正则匹配、贝叶斯预测、情感分析、旧金山犯罪预测

    在Python编程语言中,正则表达式(Regular Expression)是一种强大的文本处理工具,它用于处理字符串,进行查找、替换和提取等操作。Python内置的`re`模块提供了全面的正则表达式支持。掌握正则表达式对于数据处理、...

    linux-文件查找和内容过滤命令

    - **概述**:`egrep`命令检索扩展的正则表达式(包括表达式组和可选项),相比`grep`,`egrep`支持更多类型的正则表达式。 - **语法**:`egrep [选项] [查找模式] [文件名1,文件名2,……]` #### 三、示例与实践 1...

    PERL 编程24学时教程(PDF)

    还有`&lt;&gt;`操作符用于读取文件行。 5. **正则表达式**:Perl的正则表达式功能强大,支持模式匹配、替换和提取。例如,`=~`操作符用于绑定字符串和正则表达式,`\d`表示数字,`\w`表示字母数字字符等。 **Perl进阶...

    perl and python.zip_DNA_freedom178_序列提取_提取DNA

    Perl 的 `&lt;&gt;` 输入运算符可以用来逐行读取文件,正则表达式则可以用来匹配和提取特定的序列号。 3. Python 在 DNA 序列提取中的角色 Python 是一种更现代且易于学习的编程语言,其丰富的库如 Biopython 提供了处理...

    PERL编程24学时教程

    在教程中,你会深入学习如何使用正则表达式进行文本匹配、替换和提取。正则表达式是Perl处理字符串的强大工具,对于数据清洗和分析工作尤其有用。 文件I/O操作也是Perl的重要部分。你将学习如何打开、读取、写入和...

    python基础教程至60课(基础)

    - **文件读取**:演示如何打开并读取文件内容,包括文本文件和二进制文件。 #### Python第32课:写文件 - **文件写入**:介绍如何将数据写入文件,包括覆盖写入和追加写入。 #### Python第33课:处理文件中的数据...

    Perl脚本经典入门书籍

    Perl提供了强大的正则表达式引擎,用于匹配、替换和提取文本。初学者需要花费时间学习正则表达式的语法和模式,因为这是Perl处理文本的强大工具。 文件操作也是Perl的重要部分。Perl可以方便地读写文件,处理目录,...

    awk.Effective.awk.Programming.Universal.Text.Processing.and.Pattern.Matching.4th

    3. **输入/输出处理**:详细说明如何使用awk读取文件、处理行和字段以及格式化输出结果。 4. **条件判断与循环控制**:阐述如何通过if语句、while循环、for循环等控制语句来实现复杂的逻辑处理。 5. **函数与过程**...

    perl24小时教程

    你将学习如何使用正则表达式进行模式匹配、替换和提取信息。 4. **文件和目录操作**:Perl提供了丰富的文件和目录操作函数,让你能轻松地读写文件、创建和删除目录,这对于系统管理和文本处理任务至关重要。 5. **...

    基于C语言设计与实现词法分析程序【100011940】

    在提供的文件“20principle”中,可能是包含了词法分析的基础理论或具体实现的指导原则,如正则表达式的编写、状态转换图的设计以及词法分析程序的框架等。这部分内容对于实际编写词法分析器至关重要,因为它提供了...

Global site tag (gtag.js) - Google Analytics