匹配字符串以(regex)java结尾

时间:2015-12-19 16:13:34

标签: java regex pattern-matching

我正在关注页面check if string ends with certain pattern

上的建议

我正在尝试显示

的字符串
  • 从任何事情开始
  • 中有字母“ .mp4
  • 明确结束',(撇号后跟逗号)

这是我的Java代码:

import java.util.*;
import java.lang.*;
import java.io.*;
import java.util.regex.*;

class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        // your code goes here
        String str = " _file='ANyTypEofSTR1ngHere_133444556_266545797_10798866.mp4',";
        Pattern p = Pattern.compile(".*.mp4[',]$");
        Matcher m = p.matcher(str);
        if(m.find())
            System.out.println("yes");
        else
            System.out.println("no");
    }
}

打印“否”。我该如何申报RegEx?

1 个答案:

答案 0 :(得分:3)

您的字符集[',]正在检查字符串是否以',结束一次。

如果您想要将这些字符匹配一次或多次,请使用[',]+。但是,在这种情况下,您可能不想使用字符集,因为您说订单很重要。

要匹配撇号后跟逗号,只需使用:

.*\\.mp4',$

此外,由于.具有特殊含义,因此您需要在' .mp4'中将其转义。