正则表达式匹配的问题 现有一个字符串: "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf"怎么才能通过正则表达式把以$符开头并以$符结尾的文件名替换成指定的字符串?比如'图片',上面原始串经过替换变成"aaa图片bbbbb图片ccc图片ddwasdfadsf"谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String s = "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf"; System.out.println(s.replaceAll("\\$", "图片")); 没看清lz说啥吧哥们...String s = "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf"; System.out.println(s.replaceAll("\\$[^\\$]+\\$", "你好"));这样吧 System.out.println(s.replaceAll("(?i)(\\$\\w++\\.(?:(?:png)|(?:jpg)|(?:bmp)|(?:jpeg)|(?:gif))\\$)", "图片")); System.out.println(s.replaceAll("(?i)(\\$\\w++\\.((png)|(jpg)|(bmp)|(jpeg)|(gif))\\$)", "图片")); 1楼的写法是有问题的。以下贴出我写的代码,但$不能去掉。等待楼下高手的解答public static void main(String []args){ String str = "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf"; String newString = str.replaceAll("(?<=\\$)[a-zA-z\\.]+(?=\\$)", "图片"); System.out.println(newString); } String s = "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf"; System.out.println(s.replaceAll("\\$[^\\$]+\\.[^\\$]+\\$", "你好"));这样应该好一些,意思是:将[以$开头,不包含$号数目1个以上,一个.,不包含$号数目1个以上,以$结尾]替换为“你好” 请求指导,如何将String里面的数字筛选出来返回一个数组? Jtree,返回当前节点到根节点的路径 为什么有些java程序没有main方法 StringBuffer类的问题 关于IO问题 java初学者问题 怎样用jbuilder2005将一个.class文件做成.exe的文件?? Object类型数组中对象向下转型~~~??? 请问一下Java里在编写一个方法是如何解决“可选参数”的啊??? 关于JDBC中的驱动程序 关于数组赋值的问题!! 进来帮下忙啊!!! 这句分页在sqlserver中如何写?
String s = "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf";
System.out.println(s.replaceAll("\\$", "图片"));
没看清lz说啥吧哥们...
String s = "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf";
System.out.println(s.replaceAll("\\$[^\\$]+\\$", "你好"));
这样吧
System.out.println(s.replaceAll("(?i)(\\$\\w++\\.(?:(?:png)|(?:jpg)|(?:bmp)|(?:jpeg)|(?:gif))\\$)", "图片"));
System.out.println(s.replaceAll("(?i)(\\$\\w++\\.((png)|(jpg)|(bmp)|(jpeg)|(gif))\\$)", "图片"));
public static void main(String []args){
String str = "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf";
String newString = str.replaceAll("(?<=\\$)[a-zA-z\\.]+(?=\\$)", "图片");
System.out.println(newString);
}
String s = "aaa$demo.png$bbbbb$item.jpg$ccc$value.bmp$ddwasdfadsf";
System.out.println(s.replaceAll("\\$[^\\$]+\\.[^\\$]+\\$", "你好"));
这样应该好一些,意思是:
将[以$开头,不包含$号数目1个以上,一个.,不包含$号数目1个以上,以$结尾]替换为“你好”