`

求文本中每个URL出现的个数-0804

阅读更多
import java.util.*; 
import java.io.*; 


public class ProURL{ 
private HashMap map; 

public ProURL(){ 
this.map=new HashMap(); 
} 

private String parseURL(String fPath){ 
String rFile="rurl.txt"; 
try{ 
FileReader fr=new FileReader(fPath); 
BufferedReader br=new BufferedReader(fr); 
FileWriter fw=new FileWriter(rFile); 
BufferedWriter bw=new BufferedWriter(fw); 
String str; 
while((str=br.readLine())!=null){ 
StringBuffer tmp; 
String pre; 
String[] array=str.split("/"); 
int len=array.length; 
pre=array[0]+"//"; 
try{ 
for(int i=2;i<len-1;i++){ 
tmp.append(array[i]); 
String strTmp=tmp.toString(); 
strTmp=strTmp+"\n"; 
bw.write(strTmp); 
pre=strTmp; 

} 
bw.flush(); 
bw.close(); 
fw.close(); 
}catch(Exception ex){ 
} 

} 

}catch(Exception ex){ 
ex.printStackTrace(); 
} 

return rFile; 

} 
private void addURL(String url){ 

if(map.containsKey(url)){ 
int c=((Integer)map.get(url)).intValue()+1; 
map.put(url,new Integer(c)); 
}else{ 
map.put(url,1); 
} 

} 

public void process(String fPath){ 
String rPath=parseURL(fPath); 
FileReader fr=new FileReader(rPath); 
BufferedReader br=new BufferedReader(fr); 
String url; 
while((url=br.readLine())!=null){ 
this.addURL(url); 
} 

fr.close(); 
br.close(); 
} 

public void main(String[] args){ 
ProURL pro=new ProURL(); 
String fPath="url.txt"; 
pro.process(fPath); 

} 

} 

 

 

 

shell命令:

awk -F/ '{pre=$1"//";i=3; while(i<NF){str=pre$i"/"; count[str]++;i++;}} END{for(url in count){ print url,count[url];}}' urlfile

 

看来shell还是强大的。

分享到:
评论

相关推荐

    django动态加载数据显示词频词云,使用d3.layout.cloud.js

    - 分词后,我们使用Python的`collections.Counter`类来计算每个词的出现频率。`Counter`可以方便地统计元素的个数,并返回一个字典格式的对象,键为元素,值为出现次数。 2. **Django视图**: - 视图函数`search....

    2021-2022计算机二级等级考试试题及答案No.11246.docx

    - **超链接的展示**:在Web页面中,使用`&lt;a href="URL"&gt;链接文本&lt;/a&gt;`可以创建一个指向指定URL的超链接。如果链接文本就是URL本身,则直接点击该文本即可访问相应的网页。 - **正确答案**:C. 新浪(超链接) ### ...

    2021-2022计算机二级等级考试试题及答案No.16655.docx

    - 集合:使用`for i in set:` 结构遍历集合中的每个元素。 ### 8. 触发器的设计 - **知识点**: 如果需要监视成绩表中数据的插入和更新,并在成绩超过100分时自动将其修正为100,应该使用**BEFORE**触发器。 - **...

    【国开搜题】国家开放大学 一网一平台 Android核心开发技术01 期末考试押题试卷.docx

    - **解析**: DDMS中的Log信息共分为 **5 (C)** 个级别。 **4. 关于Android系统的优势** - **知识点**: Android系统的特性与优势。 - **开放性**: 开源操作系统,允许开发者自由修改源代码。 - **与运营商的关系*...

    2021-2022计算机二级等级考试试题及答案No.10227.docx

    - **查询视图**: 每个查询都有三种视图,即设计视图、数据表视图和SQL视图。 - **选项解析**: - A. 设计视图 - B. 模板视图 (不存在的视图类型) - C. 数据表视图 - D. SQL视图 **正确答案**: B. 模板视图 ...

    2021-2022计算机二级等级考试试题及答案No.16512.docx

    这条语句的意思是从“学生”表中选择那些没有出现在“学生选课”表中的学生记录。 - **扩展**: `NOT IN`子句用于排除指定集合中的值,适用于简单的排除条件。 #### 8. 合法的数值型常量 - **知识点**: 在编程语言...

    2021-2022计算机二级等级考试试题及答案No.15677.docx

    - **主键约束**:用于确保表中每个记录的唯一性,通过`PRIMARY KEY`声明,一个表只能有一个主键,但可以由多个字段组成,且主键字段不允许为空。 - **唯一约束**:同样保证记录的唯一性,使用`UNIQUE`关键字,一个...

    2021-2022计算机二级等级考试试题及答案No.2556.docx

    - **解释**:二进制数(1111)2转换为十进制数的方法是从右至左每个位上的数字乘以2的幂次方并求和,即\(1*2^0 + 1*2^1 + 1*2^2 + 1*2^3 = 15\)。 ### 9. Access中的自动窗体向导 - **知识点**:“新奇式”窗体不是...

    java面试题及答案-非常全面(包括基础、网络、数据结构、算法及IT大厂面经)

    - **第二范式**:确保表中的每个非键列都完全依赖于主键。 - **第三范式**:消除传递依赖关系。 ### Nosql - **特点**:非关系型数据库,适合大数据和实时应用。 - **类型**:包括键值存储、文档数据库、图形...

    2021-2022计算机二级等级考试试题及答案No.19935.docx

    接下来,我们将对每个问题及其答案进行详细解析。 1. **万维网的基础** - **题目**:万维网WWW以何种方式提供世界范围的多媒体信息服务? - **选项**:A.文本 B.信息 C.超文本 D.声音 - **正确答案**:C. 超文本...

    2021-2022计算机二级等级考试试题及答案No.14216.docx

    - 提供的例子 `http:\\www、hotmail、com\p1、html` 中包含了非法字符和格式错误,因此不是一个合法的 URL。 ### 13. 集合中保存无重复元素且排序 **知识点说明:** - `TreeSet` 是一种基于红黑树实现的集合,它...

    2021-2022计算机二级等级考试试题及答案No.10325.docx

    - 二进制编码中的每一位称为比特(bit),每个字节由8个比特组成。 - 通过不同的比特组合,可以表示各种不同类型的数据。 ### 16. 设置字体样式 **题目描述:** 用来设置粗体字的属性是 A. FontItalic B. FontSize...

    2021-2022计算机二级等级考试试题及答案No.10516.docx

    - **基数**:指的是一套数制系统中所使用的不同数字符号的个数。 - **位权**:指的是数制中每一位数值所代表的实际值大小。 #### Windows文件属性查看 - **正确理解**:在Windows操作系统中,用户可以通过右键点击...

    韩顺平AJAX和jquery笔记整理

    - 每个class为`one`的`div`父元素下的最后一个子元素。 - 如果class为`one`的`div`父元素下的仅仅只有一个子元素,那么选中这个子元素。 - **表单对象选择器**: - 获取表单元素的两种方式:通过ID选择器或类...

    Python Cookbook

    2.6 处理文件中的每个词 68 2.7 随机输入/输出 70 2.8 更新随机存取文件 71 2.9 从zip文件中读取数据 73 2.10 处理字符串中的zip文件 74 2.11 将文件树归档到一个压缩的tar文件 76 2.12 将二进制数据发送到...

    百度笔试题总汇.doc

    统计文本文件中每个URL的文件名及其出现次数,忽略域名、路径和参数。 **解决方案**: 1. **正则表达式解析**:利用正则表达式从URL中提取文件名部分,处理特殊情况如空文件名。 2. **哈希表计数**:使用哈希表...

    2022年中医大计算机在线作业及答案.doc

    - 计算机的发展主要分为基于真空管、晶体管、集成电路和大规模集成电路四个时代,每个时代主要由其使用的元件技术决定。 13. 字符A对应的ASCII码值是B. 65。 - ASCII码中,大写字母"A"的值是65。 14. 统一资源...

    2022年最新java面试题技术面试.docx

    例如,鸭子对象的叫、飞、外形这三个措施,可以提取到鸭父类中,让每个鸭子都继承这个鸭父类,重写这三个措施。 c) 工厂模式: 工厂模式是一种创建型模式,提供一个统一的接口来获取实例对象的引用。例如,登录...

    ubuntu skills

    - **图形方式中止一个程序**:在 GUI 环境中,可以使用任务管理器来中止程序。 - **查看进程打开的文件**:使用 `lsof -p &lt;pid&gt;` 显示指定进程打开的文件列表。 - **显示开启文件 abc.txt 的进程**:执行 `lsof -w ...

    2021-2022计算机二级等级考试试题及答案No.13577.docx

    2. 深度为7的满二叉树:满二叉树是每个层级都有最大节点数的二叉树。深度为7的满二叉树,叶子节点(没有子节点的节点)的个数为2^7 - 1 = 128 - 1 = 127,选项C中的64是错误的。 3. C语言逻辑表达式:在C语言中,"!...

Global site tag (gtag.js) - Google Analytics