正则表达式开头提取前三个数字

简介: 正则表达式开头提取前三个数字

适合提取这种类型数字的编号

   Pattern pattern = Pattern.compile("^\\d+");
   Matcher matcher = pattern.matcher(fileArray[i].getName());
   while (matcher.find()) {
      name = matcher.group();
      System.out.println(name);
  }
 

效果:

源码:

package zero.file.videoProject.util.test;
 
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import zero.file.videoProject.bean.video;
import zero.file.videoProject.mappers.untils.tonameMapper;
 
import java.io.File;
import java.util.ArrayList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
 
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserMapperTest {
    @Autowired
    public tonameMapper tonamejpg;
    @Test
    public void testInsert(){
        Pattern pattern = Pattern.compile("(.+(?=\\.mp4))+");
//        Pattern pattern1 = Pattern.compile("([\\d\\d\\d] +| [.+(?=\\.mp4)] + )");
//        Pattern pattern1 = Pattern.compile("[\\d\\d\\d] | [.+(?=\\.mp4)]");
//        Pattern pattern1 = Pattern.compile("(\\d\\d\\d) | (.+(?=\\.mp4))");
        Pattern pattern2 = Pattern.compile("^\\d+");
        File f = new File("C:\\Users\\17517\\Videos\\bilibili\\Java");
        File[] fileArray = f.listFiles();
        String name = null;
        String name2 = null;
        ArrayList<String> name1 = new ArrayList<String>();
        video video = new video();
        for (int i = 0; i <= fileArray.length - 1; i++) {
            Matcher matcher = pattern.matcher(fileArray[i].getName());
 
            while (matcher.find()) {
                name = matcher.group();
                System.out.println(name);
                Matcher matcher2 = pattern2.matcher(name);
                while (matcher2.find()) {
                    name2 = matcher2.group();
                    System.out.println(name2);
 
                }
                video.setId(name);
                video.setCategory(name);
                video.setName(name);
                video.setLabel(name);
//                System.out.println(video);
//                System.out.println(name);
//                tonamejpg.insert(video);
            }
//            while (matcher1.find()) {
                name2 = matcher1.group();
                System.out.println(name);
                System.out.println(name2);
//
                video.setId(name);
                video.setCategory(name);
                video.setName(name);
                video.setLabel(name);
                System.out.println(video);
                tonamejpg.insert(video);
//            }
        }
    }
}
相关文章
|
4月前
|
Java
正则表达式匹配数字的几种方法比较
正则表达式匹配数字的几种方法比较
|
5月前
|
JavaScript 前端开发 Java
正则表达式深度解析:匹配制表符
【4月更文挑战第2天】
346 2
正则表达式深度解析:匹配制表符
|
5月前
|
固态存储 Python
正则表达匹配任意单个字符
正则表达匹配任意单个字符
101 4
|
移动开发 数据库
使用notepad++将每行文本的开头结尾统一加上"",
使用notepad++将每行文本的开头结尾统一加上"",
388 0
正则表达式去除空格、符号,只保留中文、英文、数字
正则表达式去除空格、符号,只保留中文、英文、数字
778 0
【正则】至少包括字母数字特殊字符中任意2种的正则表达式
【正则】至少包括字母数字特殊字符中任意2种的正则表达式
298 0
判断字符串是否有特殊字符和以0开头的正则表达式
判断字符串是否有特殊字符和以0开头的正则表达式
正则匹配字符串反斜线的最后一部分
正则匹配字符串反斜线的最后一部分
117 0
正则匹配字符串反斜线的最后一部分
|
C#
C# -- 正则表达式匹配字符之含义
原文:C# -- 正则表达式匹配字符之含义 C#正则表达式匹配字符之含义 1.正则表达式的作用:用来描述字符串的特征。 2.各个匹配字符的含义: .   :表示除\n以外的单个字符 [ ]  :表示在字符数组[]中罗列出来的字符任意取单个 |   :表示“或”的意思 ()  :表示改变优...
1227 0