Mapreduce中对一行字符串的解析,"||"怎么替换
import java.util.StringTokenizer;
public class Test {
public static void main (String args[]){
String line = "2014-12-16 01:52:56.699462|33.60.216.98|17124|218.30.118.6|53||request|.profile3.se.360.cn||";
line =formatString(line,"|");
System.out.println(line+" "+line.indexOf("||")+" "+line.contentEquals("||"));
StringTokenizer st= new StringTokenizer(line,"|");
for(int i=0;st.hasMoreElements();i++){
System.out.println(i+" "+st.nextToken());
}
}
public static String formatString(String str,String prefix){
if(str.startsWith(prefix))
str="#"+str;
if(str.endsWith(prefix))
str=str+"#";
String regex=prefix+prefix;
if(str.indexOf(regex)!=-1){
str.replaceAll(regex, "|%|");
}
return str;
}
}请问方法formatString中对“||”这种没有替换成功要怎么解决,推测是“||”被解析成了运算符。
准备在Map端解析的,所以先测试了一下截取结果,发现是这样的

但我希望结果是这样的

求大家指教
相关推荐
MapReduce求行平均值--MapReduce案例
MapReduce求取行平均值 MapReduce小实例 数据有经过处理已经添加行号的 也有未添加的 行平均值的四种求法
摩拜数据工程师校招笔试题解析:算法SQL与业务场景
数据工程师岗位面试,不仅考察编程能力,更关注对数据链路的整体理解。从SQL窗口函数到MapReduce原理,从数据倾斜处理到业务调度建模,扎实的基础与工程敏感度缺一不可。本文以摩拜校招数据工程师笔试卷为例,按考点拆解算法、SQL、分布式计算、概率统计及场景设计类题目,剖析每类题型背后的考察逻辑与解题思路。通过还原真实业务场景,展示如何将技术概念应用于海量轨迹数据处理与调度优化,帮助求职者构建系统化的复习框架,同时为日常工作提供可借鉴的实践方法。
Hive与传统数据库五大核心差异解析:从OLAP设计到数据仓库实战
数据仓库作为企业数据分析的核心基础设施,其设计原理直接影响海量数据处理效率。与面向在线事务处理的关系型数据库不同,数据仓库采用读时模式架构,在数据加载时不强制验证结构,而是在查询时解析,这种设计为半结构化数据处理提供了极大灵活性。在技术实现层面,通过将类SQL查询转换为分布式计算任务,实现了对TB/PB级数据的批量分析能力,这正是Hive等工具的核心价值。这种架构特别适用于用户行为分析、销售报表生成等离线分析场景,其中分区表设计和ORC列式存储成为提升查询性能的关键实践。理解写时模式与读时模式的本质区别,能
头哥 | MapReduce实战演练 — 海量气象数据清洗与异常值处理
本文详细介绍了如何使用MapReduce技术处理海量气象数据,包括数据清洗与异常值处理的实战演练。通过分而治之的思想,MapReduce能高效处理气象数据中的格式混乱、缺失值和异常值问题,特别适合TB级别的数据处理需求。文章还分享了Hadoop环境配置、Mapper和Reducer设计优化等实用技巧。
大数据实验5实验报告:MapReduce 初级编程实践
林子雨大数据原理与技术第三版实验5实验报告 大数据技术与原理实验报告 MapReduce 初级编程实践 姓名: 实验环境: 操作系统:Linux(建议Ubuntu16.04); Hadoop版本:3.2.2; 实验内容与完成情况: (一)编程实现文件合并和去重操作 对于两个输入文件,即文件 A 和文件 B,请编写 MapReduce 程序,对两个文件进行合并, 并剔除其中重复的内容,得到一个新的输出文件 C。下面是输入文件和输出文件的一个样例 供参考。 输入文件 A 的样例如下:


