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

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

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

   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);
//            }
        }
    }
}
相关文章
|
5月前
|
Java
正则表达式匹配数字的几种方法比较
正则表达式匹配数字的几种方法比较
|
6月前
|
Shell Perl
用sed如果原字符串或新字符串中包含特殊字符(如正斜杠/或其他特殊字符),需要用\进行转义
用sed如果原字符串或新字符串中包含特殊字符(如正斜杠/或其他特殊字符),需要用\进行转义
769 7
|
6月前
|
固态存储 Python
正则表达匹配任意单个字符
正则表达匹配任意单个字符
199 4
正则表达式 - 最常用正则表达式大全(数字、字符、特殊)
正则表达式 - 最常用正则表达式大全(数字、字符、特殊)
815 0
正则表达式去除空格、符号,只保留中文、英文、数字
正则表达式去除空格、符号,只保留中文、英文、数字
807 0
|
机器学习/深度学习
【关于正则表达式的特殊符号的处理】之前自己在提取一个表达式一直提取不到,后来解决了,记录下知识点
1.开始的表达式:"drugLicenseCompanyperson":[{"pk":"(.*?)" 2.修改后的表达式:"drugLicenseCompanyperson":\[\{"pk":"(.*?)"
【正则】至少包括字母数字特殊字符中任意2种的正则表达式
【正则】至少包括字母数字特殊字符中任意2种的正则表达式
307 0
判断字符串是否有特殊字符和以0开头的正则表达式
判断字符串是否有特殊字符和以0开头的正则表达式
|
C#
C# -- 正则表达式匹配字符之含义
原文:C# -- 正则表达式匹配字符之含义 C#正则表达式匹配字符之含义 1.正则表达式的作用:用来描述字符串的特征。 2.各个匹配字符的含义: .   :表示除\n以外的单个字符 [ ]  :表示在字符数组[]中罗列出来的字符任意取单个 |   :表示“或”的意思 ()  :表示改变优...
1232 0