关于split分隔转义问题

我在写代码的时候遇到一个问题 关于转义的
就是用到split(".");
发现会无效果
原因就是
. 需要转义 split("\.")

   //创建mpa集合 保存文本数据 键为序号 值为文字
 HashMap<String, String> map = new HashMap<>();
    //创建流对象
    BufferedReader br = new BufferedReader(new FileReader("read.txt"));
    BufferedWriter bw = new BufferedWriter(new FileWriter("read1.txt"));

    //读取数据
    String line=null;
    while((line=br.readLine())!=null){
        //解析文本
        String[] split=line.split("\\.");
        //保存到集合
        map.put(split[0],split[1]);
    }

    //释放资源
    br.close();

    //遍历map集合
    for (int i = 1; i <=map.size(); i++) {
        String key=String.valueOf(i);
        //获取map中文本
        String value=map.get(key);

        //写出拼接文本
        bw.write(key+"."+value);
        //写出换行
        bw.newLine();
    }
    bw.close();

现给大家发一些比较常用的需要转义的字符

\ 反斜杠
\t 间隔 (’\u0009’)
\n 换行 (’\u000A’)
\r 回车 (’\u000D’)
\d 数字 等价于 [0-9]
\D 非数字 等价于 [^0-9]
\s 空白符号 [\t\n\x0B\f\r]
\S 非空白符号 [^\t\n\x0B\f\r]
\w 单独字符 [a-zA-Z_0-9]
\W 非单独字符 [^a-zA-Z_0-9]
\f 换页符
\e Escape
\b 一个单词的边界
\B 一个非单词的边界
\G 前一个匹配的结束


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值