例子:{123.jpg}234{235.bmp}123{f_1.gif}1,该字符串代表用户接受的信息。
2,{xxx.jpg}代表接受到的是自定义图片(后缀jpg、png、gif、bmp);{f_1.gif}代表系统表情(f_开头);其他的代表文字信息。
3,要将系统表情与文字信息取出来作为一个单独的字符串,比如上面的将取出为234123{f_1.gif};自定义表情将单个单个的取出,分别作为字符串,比如上面的字符串将取出为{123.jpg}、{235.bmp};
4,现在的想法是写一个函数,传入处理前的字符串后,返回一个数组,索引[0]代表文字加系统表情,索引[1]、[2]...代表每一个自定义表情,最终返回如下
new String[]{ "234123{f_1.gif}", "{123.jpg}", "{235.bmp}"};
5,这个算法应该怎么写,求达人,谢谢。
2,{xxx.jpg}代表接受到的是自定义图片(后缀jpg、png、gif、bmp);{f_1.gif}代表系统表情(f_开头);其他的代表文字信息。
3,要将系统表情与文字信息取出来作为一个单独的字符串,比如上面的将取出为234123{f_1.gif};自定义表情将单个单个的取出,分别作为字符串,比如上面的字符串将取出为{123.jpg}、{235.bmp};
4,现在的想法是写一个函数,传入处理前的字符串后,返回一个数组,索引[0]代表文字加系统表情,索引[1]、[2]...代表每一个自定义表情,最终返回如下
new String[]{ "234123{f_1.gif}", "{123.jpg}", "{235.bmp}"};
5,这个算法应该怎么写,求达人,谢谢。
解决方案 »
- j2se关于JComboBox控件的下拉列表刷新问题
- 求一个正则表达式写法:如何将方括号总的空格替换为\t
- ~0的值是多少?有多少种可能?
- java 很奇怪的一个数组声明int...x ,有谁用过?
- 奇怪的空指针异常
- 如何让一个虚拟机实例里的运行的应用程序所调用的类运行在另一个虚拟机实例里???
- 求短信猫接受短信的PDU解码程序,哪位大哥有的话,麻烦发我一下, 谢谢了!
- 进来看
- 怎样用当前包下面的其他类
- 请问VisualAgeforJava怎么样?是否用的sun的JDK?与JBuilder哪个更适用与做项目?
- 新手请教关于JAVA深克隆
- 关于java中,“避免出现空指针”和“如何快速定位空指针”的讨论
public static void main(String[] args) {
String src = "xxx{f_222.gif}{123.jpg}3234{235.bmp}12f3{f_0.gif}fddd";
String[] results = splitMessage(src);
for (int i = 0; i < results.length; i++) {
System.out.println(results[i]);
}
} public static String[] splitMessage(String source) {
Pattern pattern = Pattern.compile("([{]\\d+\\.\\D{3}[}])");
Matcher matcher = pattern.matcher(source); ArrayList<String> lstTemp = new ArrayList<String>();
while (matcher.find()) {
String pic = matcher.group();
lstTemp.add(pic);
source = source.replace(pic, "");
}
lstTemp.add(0, source);
return (String[]) lstTemp.toArray(new String[0]);
}
显示结果:
xxx{f_222.gif}323412f3{f_0.gif}fddd
{123.jpg}
{235.bmp}