Java正規表現の練習
1.メールアドレスをチェックします.
2.次の文字列を、プログラミングを学びます.
私は...私は...私は...私は...私は...学...学...学...学...编编...プログラミング..程.程...程...程
3.192.68.1.254 102.49.23.013 10.10.10.10.10.10.10.10.10.10.2.2.2 8.109.93.30 ipアドレスをアドレスセグメント順に並べ替えます.
——『毕向東25日』より
2.次の文字列を、プログラミングを学びます.
私は...私は...私は...私は...私は...学...学...学...学...编编...プログラミング..程.程...程...程
3.192.68.1.254 102.49.23.013 10.10.10.10.10.10.10.10.10.10.2.2.2 8.109.93.30 ipアドレスをアドレスセグメント順に並べ替えます.
import java.util.*;
class RegexTest
{
public static void main(String[] args)
{
// test_1();
// ipSort();
checkMail();
}
/*
: 。
*/
public static void checkMail()
{
String mail = "[email protected]";
mail = "[email protected]";
String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";// 。
reg = "\\w+@\\w+(\\.\\w+)+";// 。
//mail.indexOf("@")!=-1
System.out.println(mail.matches(reg));
}
/*
:
: .
? ?
:
1, , 。
2, , 。
3, 。 。 。
4, , 。 。
*/
public static void test_1()
{
String str = " ... ... .. ... ... .... ... ... .. . ... ... ";
/*
。 。
1, . 。
2, 。
*/
str = str.replaceAll("\\.+","");
System.out.println(str);
str = str.replaceAll("(.)\\1+","$1");
System.out.println(str);
}
/*
192.68.1.254 102.49.23.013 10.10.10.10 2.2.2.2 8.109.90.30
ip 。
, 3 。
1, 0 , 3 。
2, 3 。 ip 3 。
*/
public static void ipSort()
{
String ip = "192.68.1.254 102.49.23.013 10.10.10.10 2.2.2.2 8.109.90.30";
ip = ip.replaceAll("(\\d+)","00$1");
System.out.println(ip);
ip = ip.replaceAll("0*(\\d{3})","$1");
System.out.println(ip);
String[] arr = ip.split(" ");
TreeSet<String> ts = new TreeSet<String>();
for(String s : arr)
{
ts.add(s);
}
for(String s : ts)
{
System.out.println(s.replaceAll("0*(\\d+)","$1"));
}
}
}
——『毕向東25日』より