怎样将字符串中的"||"替换成"|"?
发布网友
发布时间:2024-10-03 01:03
我来回答
共5个回答
热心网友
时间:2024-11-16 16:16
String a = "|||";
System.out.println(a);
a = a.replaceAll("\\|\\|", "|");
System.out.println(a);
replaceAll()方法是通过正则表达式来替换字符串的!!
而在正则表达式里||是有意义的!!
所以要将其进行转义! || = \\|\\|
热心网友
时间:2024-11-16 16:08
var str='测试||测试aa|aa||测试';
str=str.replace(/\|\|/g,"|");
热心网友
时间:2024-11-16 16:14
String a = "|||";
out.println(a);
a = a.replaceAll("\\|\\|", "|");
out.println(a);
| 在java中是特殊字符
试过了 没问题
挣点分好难啊
热心网友
时间:2024-11-16 16:11
“|”是java内的特殊字符“或”,所以会出现意料以外的结果。真的想要搞清楚为什么,就需去看方法是如何实现的。
以下是方法的实现,以及相互调用的方法:
public String replaceAll(String regex, String replacement) {
return Pattern.compile(regex).matcher(this).replaceAll(replacement);
}
public static Pattern compile(String regex) {
return new Pattern(regex, 0);
}
public Matcher matcher(CharSequence input) {
synchronized(this) {
if (!compiled)
compile();
}
Matcher m = new Matcher(this, input);
return m;
}
public String replaceAll(String replacement) {
reset();
boolean result = find();
if (result) {
StringBuffer sb = new StringBuffer();
do {
appendReplacement(sb, replacement);
result = find();
} while (result);
appendTail(sb);
return sb.toString();
}
return text.toString();
}
热心网友
时间:2024-11-16 16:13
用repalce(String oldstr,String newstr)就可以了,你试试看