算法基础——2.4正则表达式初步
2014-04-29 17:03
260 查看
例一:
[java] view
plaincopy
/*
串的处理中直接使用正则的API
split
match
replaceAll
*/
public class T1
{
public static void main(String[] args)
{
//把串中的表示日期的子串变换成另一种日期表达格式
String s = "abc,kkk 2015-08-19 ttk";
s = s.replaceAll("([0-9]{4})-([0-9]{2})-([0-9]{2})", "$2/$3 $1年");
System.out.println(s);
/*
// 判断一个串,是否为Excel地址的表达格式
String s = "A3";
System.out.println(s.matches("[A-F]{1,2}[0-9]{1,5}"));
*/
/*
// 被一个或多个空格分割的字符串分离出来
String s = "ab xyz kkk";
//String[] ss = s.split(" {1,}");
String[] ss = s.split(" +");
for(int i=0; i<ss.length; i++){
System.out.println(ss[i]);
}
*/
}
}
例二;
方法一:
[java] view
plaincopy
/*第02讲-正则表达式初步_分散字符串
请把下列字符串分散为数字和字符构成的串
String s1 = "abc1234xyz667kkmd764tttt";
串由字母和数字间隔构成,要分离出所有的字母段和数字段,即:
abc
1234
xyz
667
kkmd
764
tttt
*/
public class C4 {
public static void main(String[] args) {
String s1 = "abc1234xyz667kkmd764tttt";
String []s2 = s1.split("[0-9]{1,}");
String []s3 = s1.split("[a-z]{1,}");
int i;
for(i = 0; i < s2.length && i < s3.length; ++i)
{
if(!s2[i].equals(""))
System.out.println(s2[i]);
if(!s3[i].equals(""))
System.out.println(i+s3[i]);
}
if(i == s2.length){//s2已经输出完,继续输出s3
for(int j = i; j < s3.length; ++j){
if(!s3[i].equals(""))
System.out.println(i+s3[i]);
}
}
else{//s3已经输出完,继续输出s2
for(int j = i; j < s2.length; ++j){
if(!s2[i].equals(""))
System.out.println(i+s2[i]);
}
}
}
}
方法二:
[java] view
plaincopy
public class FenLi
{
public static void main(String[] args)
{
String s = "abc1234xyz667kkmd764tttt";
s = s.replaceAll("([a-zA-Z])([0-9])", "$1,$2");
s = s.replaceAll("([0-9])([a-zA-Z])", "$1,$2");
System.out.println(s);
// 然后正常使用split进行分割就可以了。
s = s.split(",");
}
}
相关文章推荐
- 算法基础——2.4正则表达式初步
- 编程算法基础-2.4正则表达式初步
- 算法基础——2.5正则表达式进阶
- 黑马程序员_JavaSE基础知识总结十九:正则表达式初步
- 最初步的正则表达式引擎:在上个版本的基础上增加了转义字符
- 算法基础——2.5正则表达式进阶
- JAVA基础学习day26--正则表达式
- Js基础学习之-- 利用正则表达式验证 模拟注册界面
- 正则表达式基础精简篇之一 (单字符匹配)
- python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。
- Java基础(十)——Sting类及包装类、其它对象、正则表达式
- 正则表达式的快速学习和使用(基础)
- Python基础(13)_python模块之re模块(正则表达式)
- Java基础-正则表达式(一)
- Python零基础入门二十四之正则表达式知识补充
- 详解正则表达式匹配算法原理
- 黑马程序员_毕向东JAVA基础_正则表达式
- c# 正则表达式基础知识
- 正则表达式基础知识
- 正则表达式基础知识