RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
模式匹配Java代码,编写程序实现模式匹配算法

求match(sourceing,pattern)实现模式匹配的代码

java的代码

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、网络空间、营销软件、网站建设、宣威网站维护、网站推广。

private static Pattern re_lastYear_1 = Pattern.compile("(\\d{4})-(\\d{2})-(\\d{2})");

m=re_lastYear_1.matcher(s);

if(m.find()){

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");

Date date=new Date();

try {

date = dateFormat.parse(s);

} catch (ParseException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return date;

}

java正则表达式匹配模式

不需要完全匹配的正则表达式,用m1.find()函数就可以模糊匹配,完整的程序如下:

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class G {

public static void main(String[] args) {

String reg = "\\d{3}\\s+\\d{5}\\s+\\d{3}\\s+\\d{2}";

Pattern p1 = Pattern.compile(reg);

String u = "CQGM021R1 581 12138 460 00 41739-1 in-service ";

Matcher m1 = p1.matcher(u);

while(m1.find()){

System.out.println(m1.group());

}

}

}

运行结果:

581 12138 460 00

Java编程实现字符串的模式匹配

传统的字符串模式匹配算法(也就是BF算法)就是对于主串和模式串双双自左向右,一个一个字符比较,如果不匹配,主串和模式串的位置指针都要回溯。这样的算法时间复杂度为O(n*m),其中n和m分别为串s和串t的长度。

KMP 算法是由Knuth,Morris和Pratt等人共同提出的,所以成为Knuth-Morris-Pratt算法,简称KMP算法。KMP算法是字符串模式匹配中的经典算法。和BF算法相比,KMP算法的不同点是匹配过程中,主串的位置指针不会回溯,这样的结果使得算法时间复杂度只为O(n+m)。


本文标题:模式匹配Java代码,编写程序实现模式匹配算法
分享URL:http://lswzjz.com/article/dsgcogc.html