java字符串替换的问题

今天工作中遇到一个问题,需要输出mongodbObject中的部分内容,当我转换成字符串以后出现了好像无法替换的问题,经过验证,发现并非是不能替换,只是想法错误而已。

package demo;
/**
 * 输出字符串中的chenggongzhimu,shibai,count,123
 * @author tuzongxun
 *
 */
public class Test19 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//原字符串是:  {"chenggongzhimu":"shibai","count":123}
        String str="{\"chenggongzhimu\":\"shibai\",\"count\":123}";
        //先把特殊字符替换成同一字符,然后把替换的字符去掉
        String str1="\\W";
        str.replaceAll(str1, "%");
        System.out.println(str);
        String str2=str.replaceAll(str1, "%");
        System.out.println(str2);
        String [] strArr=str2.split("%");
        for(String strr:strArr){
        System.out.print(strr+" ");
        }
}
}

 一开始,两次println输出的结果分别是:str.replaceAll(str1, "1")和11chenggongzhimu111shibai111count111231
 原因是字符串的替换,是生成一个新的结果而不是改变原来的结果,因此当输出原字符串时,没有变化。

时间: 2024-10-01 12:38:35

java字符串替换的问题的相关文章

(二十一)java字符串替换的问题

今天工作中遇到一个问题,需要输出mongodbObject中的部分内容,当我转换成字符串以后出现了好像无法替换的问题,经过验证,发现并非是不能替换,只是想法错误而已. package demo; /**  * 输出字符串中的chenggongzhimu,shibai,count,123  * @author tuzongxun  *  */ public class Test19 { /*** @param args*/public static void main(String[] args)

java字符串替换排序实例_java

复制代码 代码如下: import java.util.LinkedList; public class OJ {  public OJ() {  super(); }  /*  * 功能:输入一行数字,如果我们把这行数字中的'5'都看成空格,那么就得到一行用空格分隔的非负整数(可能有些整数以'0'开头,这些头部的'0'应该被忽略掉  * ,除非这个整数就是由若干个'0'组成的,这时这个整数就是0). 对这些非负整数按从大到小的顺序排序.  *   * 输入: input,由0~9数字组成的字符

java中替换去除字符串中的空格/回车/换行符/制表符

用String对象的方法replaceAll就可以了! replaceAll(String regex, String replacement)           使用给定的 replacement 字符串替换此字符串匹配给定的正则表达式的每个子字符串. 示例代码:  代码如下 复制代码 public class T3 { public static void main(String args[]) {  String str="aa bb cc";  System.out.prin

java字符串查找与替换

问题描述 importjava.io.BufferedReader;importjava.io.BufferedWriter;importjava.io.File;importjava.io.FileReader;importjava.io.FileWriter;importjava.io.IOException;importjava.io.InputStreamReader;importjava.util.Random;importjava.util.Scanner;publicclassSt

java字符串转化小白求解!

问题描述 java字符串转化小白求解! 输入个人信息,将出生日期中的月日用*代替并输出. 老师出的题,做了4个多小时,实在不会做了,求教各位大神! 解决方案 Date的构造函数中,年是以1900开始的,因此输入的年份要减去1900,月份是0-11代表12个月,0代表1月份,因此输入的月份要减1.日是完全对应. int year = 1996; int month = 10; int day = 11; Date date = new Date(year - 1900 month - 1 day)

java字符串连接String、StringBuffer和StringBuilder

Java字符串连接再开发中随时用的,方法很多: 先看下下边的代码: package com.meiyabaike.classx; public class ClassxMathCalculate { public static void main(String[] args) { int i1 = 10; int i2 = 20; System.out.println("resultx1 :"+i1+i2); //Error: the operator - is undefined f

java 字符串操作大全2 split 详解

Java代码  String s2="this is a test"; String sarray[]=s2.split("/s"); System.out.println("sarray.length="+sarray.length); 这个输出是什么还是编译出错?我想那个split方法中的参数要是"s"的话,输出一定是4了,就是将原来字符串分成了数组{"thi","i","

java 字符替换问题。。。。

问题描述 java 字符替换问题.... http://192.168.1.254record2015Y04M03D14H19M00S.mp4?custom=1&cmd=4001怎么把里面的 替换换成 / ? 解决方案 String str = ""http://192.168.1.254\record\2015Y04M03D14H\19M00S.mp4?custom=1&cmd=4001""; String newStr = str.replace

string-请问各位大侠,java字符串转化成整数为什么会出现如下的错误?谢谢

问题描述 请问各位大侠,java字符串转化成整数为什么会出现如下的错误?谢谢 type Exception report message An exception occurred processing JSP page /admin/categoryadd.jsp at line 15 description The server encountered an internal error that prevented it from fulfilling this request. exce