正则表达式的问题
第一题:利用Random类产生5个1~30之间(包括1和20)的随机整数
我当初想的是用数组保存产生的随机数,但感觉效率很低,大家有什么好的办法吗
第二题:
给定下面的HTML代码:
<font face="Arial,Serif" size="+2" color="red">
要求对内容进行拆分,拆分之后的结果是:
face Arial,Serif
size +2
color red
这个用正则应该什么表示
import java.util.regex.*; public class TestRE { public static void main(String[] args) { String str = "<font face=\"Arial,Serif\" size=\"+2\" color=\"red\">"; String rex1 = "<\\s*font\\s+([^>]*)\\s*>"; String rex2 = "([a-zA-Z]+)\\s*=\\s*\"([^\"]+)\""; Pattern pattern1 = (rex1); Pattern pattern2 = (rex2); Matcher m = pattern1.matcher(str); while (m.find()) { String attribs = m.group(1); //System.out.println("find1"); Matcher m2 = pattern2.matcher(attribs); while (m2.find()) { //System.out.println("find2"); System.out.println(m2.group(1)+" "+m2.group(2)); } } } }