查看: 735|回复: 0

[JavaSE] 【参赛】字符串的一些实用操作——替换字符串

[复制链接]
  • TA的每日心情

    2015-6-25 12:42
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2014-6-13 08:38:33 | 显示全部楼层 |阅读模式
    本帖最后由 叹世残者 于 2014-6-13 08:38 编辑

    【导言】
    替换字符串

    1. package com.common.string;

    2. import java.util.ArrayList;
    3. import java.util.LinkedHashSet;
    4. import java.util.Set;
    5. import java.util.regex.Matcher;
    6. import java.util.regex.Pattern;

    7. /**
    8. * 功能描述:关于字符串的一些实用操作
    9. *
    10. * @author Administrator
    11. * @Date Jul 18, 2008
    12. * @Time 2:19:47 PM
    13. * @version 1.0
    14. */
    15. public class StringUtil {
    16.         /**
    17.          * 功能描述:替换字符串
    18.          *
    19.          * @param from
    20.          *            String 原始字符串
    21.          * @param to
    22.          *            String 目标字符串
    23.          * @param source
    24.          *            String 母字符串
    25.          * @return String 替换后的字符串
    26.          */
    27.         public static String replace(String from, String to, String source) {
    28.                 if (source == null || from == null || to == null)
    29.                         return null;
    30.                 StringBuffer str = new StringBuffer("");
    31.                 int index = -1;
    32.                 while ((index = source.indexOf(from)) != -1) {
    33.                         str.append(source.substring(0, index) + to);
    34.                         source = source.substring(index + from.length());
    35.                         index = source.indexOf(from);
    36.                 }
    37.                 str.append(source);
    38.                 return str.toString();
    39.         }

    40.         /**
    41.          * 替换字符串,能能够在HTML页面上直接显示(替换双引号和小于号)
    42.          *
    43.          * @param str
    44.          *            String 原始字符串
    45.          * @return String 替换后的字符串
    46.          */
    47.         public static String htmlencode(String str) {
    48.                 if (str == null) {
    49.                         return null;
    50.                 }
    51.                 return replace("\"", "&quot;", replace("<", "&lt;", str));
    52.         }

    53.         /**
    54.          * 替换字符串,将被编码的转换成原始码(替换成双引号和小于号)
    55.          *
    56.          * @param str
    57.          *            String
    58.          * @return String
    59.          */
    60.         public static String htmldecode(String str) {
    61.                 if (str == null) {
    62.                         return null;
    63.                 }

    64.                 return replace("&quot;", "\"", replace("&lt;", "<", str));
    65.         }

    66.         private static final String _BR = "<br/>";

    67.         /**
    68.          * 功能描述:在页面上直接显示文本内容,替换小于号,空格,回车,TAB
    69.          *
    70.          * @param str
    71.          *            String 原始字符串
    72.          * @return String 替换后的字符串
    73.          */
    74.         public static String htmlshow(String str) {
    75.                 if (str == null) {
    76.                         return null;
    77.                 }

    78.                 str = replace("<", "&lt;", str);
    79.                 str = replace(" ", "&nbsp;", str);
    80.                 str = replace("\r\n", _BR, str);
    81.                 str = replace("\n", _BR, str);
    82.                 str = replace("\t", "&nbsp;&nbsp;&nbsp;&nbsp;", str);
    83.                 return str;
    84.         }

    85. }
    复制代码
    您需要登录后才可以回帖 登录 | 注册青鸟豆号

    本版积分规则

    Copyright 1999-2019 Beijing Aptech Beida Jade Bird Information Technology Co.,Ltd

    北大青鸟IT教育 北京阿博泰克北大青鸟信息技术有限公司 版权所有

    京ICP备11045574号-3 京公网安备11010802013845号

    快速回复 返回顶部 返回列表