首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用RegEx在java语言中接受带有单点的文件名

在Java语言中,可以使用正则表达式(RegEx)来接受带有单点的文件名。正则表达式是一种强大的模式匹配工具,可以用来匹配、查找和替换字符串。

对于接受带有单点的文件名,可以使用以下正则表达式模式:

代码语言:java
复制
String pattern = "^[^.]*\\.[^.]*$";

解释一下这个正则表达式的含义:

  • ^ 表示匹配字符串的开头
  • [^.] 表示匹配除了点号(.)之外的任意字符
  • * 表示匹配前面的字符零次或多次
  • \\. 表示匹配点号(.),需要使用双反斜杠来转义
  • [.] 表示匹配点号(.)
  • $ 表示匹配字符串的结尾

这个正则表达式模式可以用来判断一个文件名是否包含单点,并且不包含多个点号。如果文件名符合这个模式,那么就可以接受它。

以下是一个示例代码,演示如何使用正则表达式在Java中接受带有单点的文件名:

代码语言:java
复制
import java.util.regex.Pattern;
import java.util.regex.Matcher;

public class Main {
    public static void main(String[] args) {
        String filename1 = "file.txt"; // 合法的文件名
        String filename2 = "file.name.txt"; // 非法的文件名

        String pattern = "^[^.]*\\.[^.]*$";
        Pattern regex = Pattern.compile(pattern);

        Matcher matcher1 = regex.matcher(filename1);
        if (matcher1.matches()) {
            System.out.println("文件名合法");
        } else {
            System.out.println("文件名非法");
        }

        Matcher matcher2 = regex.matcher(filename2);
        if (matcher2.matches()) {
            System.out.println("文件名合法");
        } else {
            System.out.println("文件名非法");
        }
    }
}

输出结果为:

代码语言:txt
复制
文件名合法
文件名非法

这样,我们就可以使用正则表达式在Java语言中接受带有单点的文件名了。

关于正则表达式的更多详细用法和语法,请参考腾讯云的文档:正则表达式

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

在CMD窗口中使用javac和java命令进行编译和执行带有包名的具有继承关系的类

一、背景   最近在使用记事本编写带有包名并且有继承关系的java代码并运行时发现出现了很多错误,经过努力一一被解决,今天我们来看一下会遇见哪些问题,并给出解决办法。...解决办法为:我们需要使用javac *.java命令来进行运行,因为此时存在继承关系,编译子类的同时也需要先编译父类 2)运行java Zi命令,出现以下错误 ? 这是什么原因呢?...这是因为我们不存在子文件夹com/hafiz/zhang并且在该子文件夹下不存在Zi.class文件,故找不到主类。 解决办法是:使用javac  -d . *.java("-d ."...此时我们还发现,已经自动生成子文件夹com/hafiz/zhang并且在该子文件夹下存在Zi.class文件了。 ?...由此我们得出了在CMD窗口中使用javac和java命令进行编译和执行带有包名的具有继承关系的类的方式: 1.使用javac -d . *.java进行编译 2.使用java com.hafiz.Zi(

1.6K40
  • 使用 Ruby 或 Python 在文件中查找

    对于经常使用爬虫的我来说,在大多数文本编辑器都会有“在文件中查找”功能,主要是方便快捷的查找自己说需要的内容,那我有咩有可能用Ruby 或 Python实现类似的查找功能?这些功能又能怎么实现?...报告: 指定要显示的结果类型,例如文件名、文件计数或两者兼有。方法: 指定要使用的搜索方法,例如正则表达式或纯文本搜索。...)​results.each do |result| puts resultend上述脚本可以接受以下参数:searchtext:要查找的文本。...regex_search:指定是否使用正则表达式进行搜索。脚本将返回一个包含所有匹配文件的文件名列表,或者如果指定了报告文件名选项,则返回一个包含所有匹配文件的文件名和行号的列表。...上面就是两种语实现在文件中查找的具体代码,其实看着也不算太复杂,只要好好的去琢磨,遇到的问题也都轻而易举的解决,如果在使用中有任何问题,可以留言讨论。

    9910

    005-golang-单元测试

    golang的单元测试 Go语言中自带有一个轻量级的测试框架testing和自带的 go test命令来实现单元测试和性能测试,testing框架和其他语言中的测试框架类似,你可以基于这个框架写针对相应函数的测试用例...编写测试用例 测试编写原则 文件名必须是_test.go结尾的,这样在执行go test的时候才会执行到相应的代码 你必须import testing这个包 所有的测试用例函数必须是Test开头 测试用例会按照源代码中写的顺序依次执行...测试函数TestXxx()的参数是testing.T,我们可以使用该类型来记录错误或者是测试状态 测试格式:func TestXxx (t *testing.T),Xxx部分可以为任意的字母数字的组合...... } go test不会默认执行压力测试的函数,如果要执行压力测试需要带上参数-test.bench,语法:-test.bench="test_name_regex",例如go test -test.bench...*"表示测试全部的压力测试函数 在压力测试用例中,请记得在循环体内使用testing.B.N,以使测试可以正常的运行 文件名也必须以_test.go结尾 参考链接 Golang 单元测试和性能测试 http

    53640

    【Kotlin】字符串操作 ② ( 字符串替换函数 replace | 字符串比较操作符 == 和 === | 字符串遍历 forEach )

    来处理替换字符串 * 使用[kotlin.text.Regex.Companion.escapeReplacement]方法进行转义。...): String = regex.replace(this, replacement) /** * 返回一个新字符串,通过替换此字符序列中匹配给定正则表达式的每个子字符串获得 * 使用给定函数[...transform]的结果,该函数接受[MatchResult],并返回一个字符串用作 * 替换该匹配。...r%d 二、字符串比较操作符 == 和 === ---- Kotlin 语言中的字符串比较操作符 : == 的作用是 比较 两个字符串 的 字符内容是否 相等 ; 相当于 Java 中的 equals...--- 调用 字符串 String 的 forEach 函数 , 可以 遍历字符串中的每个字符 , 并且 针对该字符 执行相应 Lambda 表达式 的操作 ; 在 forEach 函数 中 , 可以通过

    1.6K20

    转-Golang语言-- Test Case

    简介 Go 语言中自带有一个轻量级的测试框架 testing 和自带的 go test 命令来实现单元测试和性能测试。 2....要求 文件名必须是`_test.go`结尾的,这样在执行`go test`的时候才会执行到相应的代码 你必须 import `testing`这个包 所有的测试用例函数必须是`Test`开头 测试用例会按照源代码中写的顺序依次执行...测试函数`TestXxx()`的参数是`testing.T`,我们可以使用该类型来记录错误或者是测试状态 测试格式:`func TestXxx (t *testing.T)`,`Xxx`部分可以为任意的字母数字的组合...不会默认执行压力测试的函数,如果要执行压力测试需要带上参数-test.bench,语法:-test.bench="test_name_regex",例如 go test -test.bench="....*"表示测试全部的压力测试函数 在压力测试用例中,请记得在循环体内使用 testing.B.N,以使测试可以正常的运行文件名也必须以_test.go 结尾 5.

    69170

    Java 正则表达式:语法讲解和常用表达式汇总

    正文 使用正则表达式需要引入 java.util.regex 包,我们就从这里入手讲解: java.util.regex 包主要包括以下三个类: Pattern 类: pattern 对象是一个正则表达式的编译表示...以下实例中演示了正则表达式的使用: /* import java.util.regex.*; */ public void RegexExample() { String input = "...在 Java 中,\\ 表示:我要插入一个正则表达式的反斜线,所以其后的字符具有特殊的意义。...所以,在其他的语言中(如Perl),一个反斜杠 \ 就足以具有转义的作用,而在 Java 中正则表达式中则需要有两个反斜杠才能被解析为其他语言中的转义作用。...也可以简单的理解在 Java 的正则表达式中,两个 \\ 代表其他语言中的一个 \,这也就是为什么表示一位数字的正则表达式是 \\d,而表示一个普通的反斜杠是 \\\\。

    4.3K20

    Payload多种隐藏方法

    虽然上面说准备介绍三种,实际上归成一类就是一种,简单点讲,就是利用“白名单”。...我们在C2配置中配置了payload传输过程,旨在让我们的payload出现在wd参数中,而wd正常来说是关键词的参数。 ? 然后我们让payload的响应数据出现在如下html中: ?...第二种,在白名单网站中传输payload 何为白名单,如上面第一种提到的百度,还有qq空间、github、微软,看起不应该出现问题的网站。...最后的一个运作流程如下,因为语雀为https,所以看到的是加密,如果不是加密,不明所以的看到的以为只是像白名单网站访问了一下,谁会没事在乎他干嘛去访问一下百度、qq空间呢。 ?...第三个就是Domain fronting,简单点讲,就是伪造host,让cdn根据host转发到你真正的C2上面去,但是流量看只是一个正常的网站。就如上面说的,没钱就不往下写了。

    1.9K10

    资源 | 正则表达式的功法大全,做NLP再也不怕搞不定字符串了

    在本文中,作者由基础到高级介绍了很多正则表达式,这些表达式或规则在很多编程语言中都是通用的。...其中一个比较有意思的地方是,只要我们学会了正则表达式的语句,我们几乎可以将其应用于多有的编程语言,包括 JavaScript、Python、Ruby 和 Java 等。...匹配任何带有文本“roar”的字符串 数量符:*、+、?...(https://regex101.com/r/cO8lqs/22) [0-9]% 匹配在%符号前面带有0到9这几个字符的字符串 [^a-zA-Z] 匹配不带a到z或A...* (https://regex101.com/r/cO8lqs/21) 结语 正如上文所示,正则表达式的应用领域非常广,很可能各位读者在开发的过程中已经遇到了它,下面是正则表达式常用的领域: 数据验证

    1.6K80

    人类语言遇上编程语言

    然而,了解英语对于学习印欧语系以外的语言帮助就没有那么大了——比如印地语、阿拉伯语或者日语,它们与英语、法语相比有着显著的不同。 我的编程语言学习经历就是一个很好的例子。...然而,学习它们圈外的语言时就得小心了,比如 LISP/Scheme、 AMPL、 SQL、 Regex和Dart,这种感觉就像一个已经说了25年英语的人去学习日语一样。...就像在所有的人类语言当中,讲话最基本的部分是一致的——名词(包括性别与数量),动词,形容词,副词等。但从表象上来看,它们在不同的语言中都不一样。 我对发明新的编程语言有着十分浓厚的兴趣。...而与这些兴趣爱好者不同的是,一些人有偿地为大公司设计编程语言,比如Google(Dart),Microsoft(C#)和Sun(Java)。...编程语言相较于人类语言更加严格这个事实没什么可惊讶的。计算机对于拟接收的指令要求非常的精确严谨。此外,计算机没有接受过像人类那样的消除表达歧义的训练。

    10.9K60

    SpringBoot整合Minio对象存储服务

    所以他采用了更易用的方式进行设计,它能实现对象存储所需要的全部功能,在性能上也更加强劲,它不会为了更多的业务功能而妥协,失去MinIO的易用性、高效性。...这样的结果所带来的好处是:它能够更简单的实现局有弹性伸缩能力的原生对象存储服务。 MinIO在传统对象存储用例(例如辅助存储,灾难恢复和归档)方面表现出色。...; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.regex.Matcher...; import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException; /** * minio文件上传工具类...= -1) { fileName = fileName.substring(pos + 1); } //替换上传文件名字的特殊字符

    2K40

    python3从零学习-5.4.8、fnmatch — Unix文件名模式匹配

    shell 风格通配符所使用的特殊字符如下:      模式      含义      *      匹配所有      ?      ...注意文件名分隔符 (Unix 上为   '/'  )   不是   此模块所特有的。 请参见 glob   模块了解文件名扩展 (glob   使用 filter()   来匹配文件名的各个部分)。...类似地,以一个句点打头的文件名也不是此模块所特有的,可以通过   *   和   ?   模式来匹配。    ...这个例子将打印当前目录下带有扩展名   .txt   的所有文件名:    import fnmatch import os for file in os.listdir('.'):     if fnmatch.fnmatch...示例: >>> import fnmatch, re >>> >>> regex = fnmatch.translate('*.txt') >>> regex '(?

    78010

    Java中使用正则表达式

    前言 正则在线测试工具 https://c.runoob.com/front-end/854/ Java语言中的正则表达式匹配功能主要是通过java.util.regex.Matcher类和以下这些方法实现的...String本身的方法 在实际的开发中,为了方便我们很少直接使用Pattern类或Matcher类,而是使用String类下的方法 验证:boolean matches(String regex) 拆分...要想使用正则表达式,必须先用import java.util.regex.* 语句导入正则表达式组件(这条语句将导入一个完整的软件包。...所以,在其他的语言中(如 Perl),一个反斜杠 \ 就足以具有转义的作用,而在 Java 中正则表达式中则需要有两个反斜杠才能被解析为其他语言中的转义作用。...也可以简单的理解在 Java 的正则表达式中,两个 \\ 代表其他语言中的一个 \,这也就是为什么表示一位数字的正则表达式是 \\d,而表示一个普通的反斜杠是 \\。

    89710
    领券