Oracle翻译的Java等价物
java中是否有与oracle translate函数行为相同的等效字符串函数或库 在oracle中,我可以做到这一点:Oracle翻译的Java等价物,java,string,oracle,equivalent,sql-function,Java,String,Oracle,Equivalent,Sql Function,java中是否有与oracle translate函数行为相同的等效字符串函数或库 在oracle中,我可以做到这一点: select translate( '23423k!(dfgd){sdf};', '(){}k!', '{}()' ) from dual; 要获得此信息: 23423{dfgd}(sdf); ori:23423k!(dfgd){sdf}; mod:23423(dfgd)(sdf); 但在java中,如果我这样做: String a="23423k!(
select translate(
'23423k!(dfgd){sdf};',
'(){}k!',
'{}()'
) from dual;
要获得此信息:
23423{dfgd}(sdf);
ori:23423k!(dfgd){sdf};
mod:23423(dfgd)(sdf);
但在java中,如果我这样做:
String a="23423k!(dfgd){sdf};";
String b=a
.replace("(", "{")
.replace(")", "}")
.replace("{", "(")
.replace("}", ")")
.replace("!", "")
.replace("k", "")
;
System.out.println("ori:"+a);
System.out.println("mod:"+b);
我明白了:
23423{dfgd}(sdf);
ori:23423k!(dfgd){sdf};
mod:23423(dfgd)(sdf);
这是可行的,但不是正确的方法。看看如何使用String.replace()或StringBuffer类。我将构建一个正则表达式来匹配字符串并捕获感兴趣的子字符串,然后使用字符串连接将适当的样板添加回中,该实用程序方法正好可以做到这一点 爪哇语说: 一次性替换字符串中的多个字符。此方法也可用于删除字符。搜索字符的长度通常应等于替换字符的长度。如果搜索字符较长,则会删除多余的搜索字符
看看String.replace()