① java怎么把一个字符串中的字符替换成别的字符
如何将字符串中的"\"替换成"\\":
String msgIn;
String msgOut;
msgOut=msgIn.replaceAll("\\\\","\\\\\\\\");
原因:
'\'在java中是一个转义字符,所以需要用两个代表一个。例如System.out.println( "\\" ) ;只打印出一个"\"。但是'\'也是正则表达式中的转义字符(replaceAll 的参数就是正则表达式),需要用两个代表一个。所以:\\\\被java转换成\\,\\又被正则表达式转换成\。
同样
CODE: \\\\\\\\
Java: \\\\
Regex: \\
将字符串中的'/'替换成'\'的几种方式:
msgOut= msgIn.replaceAll("/", "\\\\");
msgOut= msgIn.replace("/", "\\");
msgOut= msgIn.replace('/', '\\');
将字符串中的'\'替换成'/'的几种方式:
msgOut= msgIn.replaceAll("\\\\","/");
msgOut= msgIn.replace("\\","/");
② Java 正则表达式 替换字符串中人名
public static void main(String[] args) {
System.out.println("请输入姓名:");
Scanner in=new Scanner(System.in);
String input=in.nextLine();
//保留姓氏
char str2=input.charAt(0);
//截取名字
String str1=input.substring(1);
//用正则表达式替换(包括汉字,数字,大小写字母)
str1=str1.replaceAll("[^x00-xff]|\w", "x");
//输出替换后的名字
System.out.println(str2+str1);
}
③ java:请按如下要求利用正则表达式替换字符串,谢谢
你可以利用
int start = "xxx[0001112]ss".indexOf('[') + 1;
int end = "xxx[0001112]sss".indexOf(']');
String s="xxx[0001112]sss".substring(start, end);
然在做转换成
char[] c = "xxx[0001112]sss".toCharArray();
做添加就好了
再转回String
④ java字符串替换所有方法如下语句怎么简化
可以用Java正则表达式一个replaceAll方法能达到相同的目的.
完整的Java程序如下
public class F{
public static void main(String[] args){
String s1="001002003";
String regex="([0-9]{3})";
String s2=s1.replaceAll(regex,"$1H");
System.out.println(s2);
}
}
⑤ java 正则替换同一类字符串
Patternp=Pattern.compile("<ap="(\S+)"pp="(\S+)">(\S+)</a>");
String[]strs={"<ap="变量1"pp="变量2">表达式1</a>",
"<ap="变量3"pp="变量4">表达式2</a>",
"<ap="变量5"pp="变量6">表达式3</a>"};
for(Stringstr:strs){
Matcherm=p.matcher(str);
if(m.matches()){
Stringsub=String.format("<xm="%s!=null">%s%s</x>",
m.group(2),m.group(1),m.group(3));
System.out.println(sub);
}
}
⑥ java正则表达式怎么定义只替换中间的字符
可以使用分组来完成,替换字符串中使用$1、$2、$3……可以获取对应组的匹配结果。如果前后的字符串是固定的那更简单,直接在替换的时候写上就好了。
因为String的replaceAll就是使用的正则表达式所以示例直接使用的String的替换,Pattern的替换同理。
publicclassDemo{
publicstaticvoidmain(String[]args){
Stringstr="aa文字1bb哈哈cc测试dx,测试字符串aa1234bb";
//替换aa、bb之间的字符串为"成功"
Stringstr1=str.replaceAll("aa.*?bb","aa成功bb");
System.out.println(str1);
//替换aa、bb之间的字符串为"成功"
Stringstr2=str.replaceAll("(aa).*?(bb)","$1成功$2");
System.out.println(str2);
//替换小写字母之间的字符串为"成功"
Stringstr3=str.replaceAll("([a-z]+).*?([a-z]+)","$1成功$2");
System.out.println(str3);
}
}
⑦ java使用正则表达式替换字符串
正则改成这个: (?<=\\b)\\W*/r(?=\\b)
⑧ java正则表达式取值并保持格式替换
import java.util.regex.*;
public class Exam
{
public static void main(String[] args)
{
final String s="t1:\"1:0\",t2:\"2:0\",t3:\"2:1\",t4:\"2:2\"",d;
Pattern p=Pattern.compile("(\\d):(\\d)");
Matcher m=p.matcher(s);
// System.out.println(s);
d=m.replaceAll("s$1$2");
System.out.println(d);
}
}
⑨ java正则表达式多个字符串替换怎样实现
str.replaceAll("[A-Z]+\\d{3}", "hello").replaceAll("[^A-Za-z]", "==");
⑩ java正则表达式是什么
在程序开发中,难免会遇到需要匹配、查找、替换、判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力。因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段。
正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。
(10)java正则表达式替换字符串扩展阅读:
正则表达式的特点是:
1、灵活性、逻辑性和功能性非常强;
2、可以迅速地用极简单的方式达到字符串的复杂控制。
3、对于刚接触的人来说,比较晦涩难懂。
由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到着名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。