「javamatch」javamatch函数

博主:adminadmin 2023-01-04 18:45:09 939

本篇文章给大家谈谈javamatch,以及javamatch函数对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java类库中String类的match方法用法

纠正下,java中用到的是matchs,不是match,意思为比较两个值是否相等。举例:

String str = "1111111";

String str1 = "1111111";

System.out.println(str.matches(str1));//两个输出的值相等,所以是true

String format = "yyyy-MM-dd hh:mm:ss";

String time = "2010-07-13 03:30:50";

System.out.println(time.matches(format));//比较的是值不是类型,所有是false

输出结果:

java中matchs()的用法

我就说,这个问题这么没人回答,原来是一个这么"泛"的问题,不好回答呀!简单跟你说一下吧,matchs()这个方法中需要传入一个参数,这个参数是一个字符串类型的。实际上,在执行的时候,JVM会把这个字符串参数理解成为正则表达式,然后实现正则匹配!正则匹配是一个大的议题,一点点篇幅说不清楚,你可以去想象一下你在使用系统搜索功能的时候,在搜索框中填写的东西,那个就是正则表达式。然后,还是给你一个示例把:

public class Test{

public static void main(String args[])

{

String str="abcdefg";

//检查"abcdefg"是否匹配"abcdefg"

System.out.println(str.matches("abcdefg"));

//检查"abcdefg"是否匹配"abc"

System.out.println(str.matches("abc"));

//检查"abcdefg"是否匹配 以abc开头 后接任意字符(可以为空)

System.out.println(str.matches("^abc.*"));

//检查"abcdefg"是否匹配 以abc开头,以字母结束(可以为空)

System.out.println(str.matches("^abc[a-z]*"));

//检查"abcdefg"是否匹配以任意字符开头,以abc作为结尾

System.out.println(str.matches(".*abc$"));

}

}

执行结果:

true

false

true

true

false

如何用java实现javascript的match效果?

Java 的正则表达式用法和 JavaScript 的类似。

但是正则表达式的写法略有不同。在 Java 中正则表达式源是当中普通字符串来对待的,不需要像 JavaScript 那样用“/.../”包裹,另外,特别要注意正则表达式转义字符是双斜杠(因为在 Java 中,斜杠已是字符串的转义字符,双斜杠才代表斜杠)。

至于使用的语法,常规情况下,需要用到 Pattern 类,下面是一个例子:

import java.util.regex.Pattern; // 导入 regex 包

import java.util.regex.Matcher;

// public class ... {

Pattern p = Pattern.compile("Hello \\w"); // 编译正则表达式

Matcher m = p.matcher("Hello World"); // 开始匹配字符串

while (m.find()) { // 只要匹配则循环

 String result = m.group(); // 返回匹配的子串

}

// }

但是有时候不用这么麻烦,String 类中有隐含的正则表达式匹配函数 matches() 和 split(),其中 split() 和 JavaScript 中的 match() 比较相似。下面是例子:

String s = "Hello A Hello B Hello C";

boolean bResult = s.matches("Hello [A-C]"); // matches() 仅返回逻辑判断结果

String[] strResults = s.split("Hello [A-C]"); // split() 可返回结果子串,放在数组当中

详细用法请参考 Java 语言手册。

http:// docs.oracle.com/javase/6/docs/api/java/lang/String.html

http:// docs.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html

java正则表达式判断一个字符前是否有一个字符

java使用match和pattern来实现判断字符串是否不含有某个字符,实例如下:

/**

* 判断字符串是否数值

* @param str

* @return true:是数值 ;false:不是数值

* @author:WD_SUHUAFU

*/

private boolean isNumber(String str)

{

Pattern pattern = Pattern.compile("^[0-9]+(.[0-9]*)?$");

Matcher match=pattern.matcher(str);

return match.matches();

}

java matcher方法

看一下Pattern的matcher方法就知道了

/**

* Creates a matcher that will match the given input against this pattern.

* /p

*

* @param input

* The character sequence to be matched

*

* @return A new matcher for this pattern

*/

public Matcher matcher(CharSequence input) {

if (!compiled) {

synchronized(this) {

if (!compiled)

compile();

}

}

Matcher m = new Matcher(this, input);

return m;

}

它返回的是一个新的Matcher对象, 再执行它的matches()方法.

遇到不懂的时候看看源代码就一目了然啦

java里.matches方法有什么用

java.lang包中的String类,java.util.regex包中的Pattern,Matcher类中都有matches()方法。

都与正则表达式有关。下面我分别举例:(字符串:"abc",正则表达式: "[a-z]{3}")

String类的方法:

boolean b = "abc".matches("[a-z]{3}"

System.out.println(b);

Pattern类中的方法:

boolean b = Pattern.matches("[a-z]{3}","abc");

System.out.println(b);

Matcher类中的方法:

Pattern p = Pattern.compile("[a-z]{3}");

Matcher m = p.matcher("acc");

boolean b =m.matches()

System.out.println(b)

关于javamatch和javamatch函数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。