日期:2014-05-20  浏览次数:20802 次

java字符串替换疑问!!
问下,一段字符串,在java中如何用正则替换字符串?

替换前:

String s="1、flskfls;kf;slkf;ls2、kjfldkjlfkslfkjls3、lfkslkjflksjlklkjl";


替换后:
String s1="<ol><em>1、</em><span>flskfls;kf;slkf;</span></ol><ol><em>2、</em><span>kjfldkjlfkslfkjls</span></ol><ol><em>3、</em><span>lfkslkjflksjlklkjl</span></ol>";

java 字符串 正则表达式

------解决方案--------------------
你这字符串没什么规律。
------解决方案--------------------
规律是不是就是"0-9+、"?
这样
str.replaceAll([0-9]{1}+"、");

可以么?
Java code不需要的时候就别用了,要不都一行,不好看。
------解决方案--------------------
用边界匹配比较好
String s1=s.replaceAll("([0-9]+、)(.*?)(?=[0-9]+、
------解决方案--------------------
$)", "<ol><em>$1</em><span>$2</span></ol>");
------解决方案--------------------
刚才仔细看了一下
还真是一楼说的,规律这也太难了。。
1、  转成:<ol><em>1、</em><span>
ls2、转成:<ol><em>2、</em><span>
ls3、转成:ls<ol><em>3、</em><span>
------解决方案--------------------
我弱弱的问一句 ..        ls2、前面的ls不要?
------解决方案--------------------
引用:
用边界匹配比较好
String s1=s.replaceAll("([0-9]+、)(.*?)(?=[0-9]+、
------解决方案--------------------
$)", "<ol><em>$1</em><span>$2</span></ol>");



正解!!!!!!!!!!