请教如何实现替换字符的问题 例如,有下面一个字符窜update table set aaa='000' where ccc='222' and flag=:p2下面需要实现的是如果字符窜里含有:P这样的,就将含有他的flag=:p2这一整窜替换成2>1请教如何实现呢?谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 if(str.indexOf("flag=:p2")!=-1) { str = "2>1"; } [String].replace( "flag=:p2", "2>1" ); public class test { /** * @param args */ public static void main(String[] args) { String str= "update table set aaa='000' where ccc='222' and flag=:p2"; //如果含有":p2",则替换 if(str.indexOf(":p2") !=-1) { str = str.replaceAll("flag=:p2", "2>1"); System.out.println(str); } }} 不好意思,这只是一个举例,程序中不一定是flag=:p2,而是变化的不同的可能需要通过空格切割,不知道怎么实现 假设有3个空格可以分成4段String sub[]=new String[4];StringTokenizer k=new StringTokenizer(string_temp," "); for(int t=0;t!=4;t++){ sub[t]=k.nextToken(); } 应该是首先将那个字符窜按空格切割,割成若干块然后查找每块,将含有:P的那块替换成2>1不知道怎么编码:( 简单的理解就是找到你要的字符串,删除他,记录下被删除字符串的位置,在相应的位置插入目标字符串似乎没有必要用到StringTokenizer这样的东西,用了效果反而不好 例如字符窜为str String[] temp=str.split(" "); str=""; for(int i=0;i<temp.length; i++) { if(temp[i].indexOf(":p") !=-1) temp[i] = "2>1"; str=str.concat(" "+temp[i]); }用了个比较基础的算法,可以实现了。 Java是平台,还是编程语言,或者两者兼备??? 请问如何判断一个线程是否处于暂停? 一个字符串截取问题 出现Exception in thread "main" java.lang.NoClassDefFoundError:hello的错误! !!!没有装jdk的机子上可否运行java程序!!!!!!!!!!!!!!!! 那里能够下栽到SNMP的包?谢谢,感激中 关于变量初始话的问题 帮助我修改一下程序 好吗 是有关和数据库连接的 如何将TXT文件中的格式内容取出存入一个数组? 2个时间相差几个小时? 关于鼠标事件的问题 何为轻量级?
}
* @param args
*/
public static void main(String[] args) {
String str= "update table set aaa='000' where ccc='222' and flag=:p2";
//如果含有":p2",则替换
if(str.indexOf(":p2") !=-1)
{
str = str.replaceAll("flag=:p2", "2>1");
System.out.println(str);
}
}
}
可能需要通过空格切割,不知道怎么实现
可以分成4段String sub[]=new String[4];
StringTokenizer k=new StringTokenizer(string_temp," ");
for(int t=0;t!=4;t++){
sub[t]=k.nextToken();
}
首先将那个字符窜按空格切割,割成若干块
然后查找每块,将含有:P的那块替换成2>1
不知道怎么编码:(
似乎没有必要用到StringTokenizer这样的东西,用了效果反而不好
String[] temp=str.split(" ");
str="";
for(int i=0;i<temp.length; i++)
{
if(temp[i].indexOf(":p") !=-1)
temp[i] = "2>1";
str=str.concat(" "+temp[i]);
}
用了个比较基础的算法,可以实现了。