0 0

正则表达式 怎么匹配文件名?5

比如说我有一个文件的全路径

String fullName = "/home/misJ/tmp/May/data/test.xml";


然后我想用正则表达式匹配出他的文件名

String fileName = "test.xml";


怎样些正则表达式?我写的好像不行,如果有好的欢迎分享,或者顺便帮忙看下我出的问题。

Matcher m = Pattern.compile("/.+?$").matcher(fullName );
if(m.find()) {
   return fileName.substring(m.start(),m.end()).replace("/","");
}else {
   return "";
}

问题补充:里面的表达式能稍微解释一下吗?

问题补充:很感谢,只是希望能解释一下
[^/\\\\]+$
的意思~
fmjsjx 写道
public static void main(String[] args) {
	String fullName = "/home/misJ/tmp/May/data/test.xml";
	Pattern pattern = Pattern.compile("[^/\\\\]+$");
	Matcher matcher = pattern.matcher(fullName);
	if(matcher.find()) {
		System.out.println(matcher.group());
	}
}

最好自己再测一下其他情况。

2011年5月24日 13:28

3个答案 按时间排序 按投票排序

0 0

采纳的答案

引用
里面的表达式能稍微解释一下吗?

[^/\\\\]+ 就是除了"/"和"\"外的字符一或多个,最后的"$"不用解释了吧

2011年5月24日 14:29
0 0

public static void main(String[] args) {
	String fullName = "/home/misJ/tmp/May/data/test.xml";
	Pattern pattern = Pattern.compile("[^/\\\\]+$");
	Matcher matcher = pattern.matcher(fullName);
	if(matcher.find()) {
		System.out.println(matcher.group());
	}
}

最好自己再测一下其他情况。

2011年5月24日 14:07
0 0

[^/]+\..+

2011年5月24日 14:02

相关推荐

    正则表达式匹配调试工具

    为了更好地理解和调试正则表达式,开发者通常会使用专门的正则表达式匹配调试工具。 正则表达式匹配调试工具的功能通常包括以下几点: 1. **实时匹配测试**:用户可以输入正则表达式和待匹配的文本,工具会即时...

    通过正则表达式来批量修改文件名

    在批量修改文件名的过程中,我们通常会先编写一个脚本,这个脚本会遍历指定目录下的所有文件,然后用正则表达式检查每个文件名,根据匹配的结果进行相应的替换。以下是一个简单的Python示例: ```python import os ...

    kettle 根据系统时间加正则表达式动态匹配获取多个文本文件

    kettle 根据系统时间加正则表达式动态匹配获取多个文本文件

    正则表达式(Deelx版)|正则表达式(Deelx版)支持库

    - 根据提供的文件名"正则表达式支持库200版静态版RegExfnE"推测,这可能是正则表达式支持库的一个版本,可能是静态编译版,便于集成到不同的项目中,无需动态链接库依赖。 6. **使用与集成** - 集成Deelx版正则...

    C++ 正则表达式匹配工具源码

    在"C++ 正则表达式匹配工具源码"中,我们可以期待看到一系列类和函数,它们是基于`<regex>`库实现的,用于解析、编译和执行正则表达式。这些工具可能包括: 1. **正则表达式编译**:`std::regex`类用于创建一个正则...

    正则表达式转NFA实现

    文件名“RextoNFA”可能包含一个实现这一转换的程序或库,它可能采用了递归下降解析或者其他算法来处理正则表达式的语法,并构建相应的NFA结构。 NFA的优势在于它允许并行匹配,即使在面对复杂正则表达式时,其性能...

    java正则表达式.pdf

    下面是一个简单的示例,展示了如何使用Java中的正则表达式进行文本匹配: ```java package testreg; import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexStudy { public ...

    源码(精通正则表达式&实战正则表达式)

    在IT领域,正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,用于匹配、查找、替换或提取字符串中的特定模式。本资源“源码(精通正则表达式&实战正则表达式)”专注于JavaScript环境下的正则...

    正则表达式匹配工具

    3. 测试工具:标题中提到的“正则表达式匹配工具”就是这类工具,它们提供界面供用户输入待匹配字符串和正则表达式,快速测试匹配结果。 4. 编程语言支持:几乎所有的现代编程语言都内置了正则表达式支持,如...

    最常用的一些正则表达式和验证正则表达式

    正则表达式是一种强大的文本处理工具,用于匹配、查找、替换和分析字符串。...`RegexProofness`这个文件名可能包含的是各种正则表达式的测试用例,用于确保我们的验证函数在不同输入下都能正常工作。

    正则表达式(里面包含大量的正则表达式)

    正则表达式是一种强大的文本处理工具,用于在字符串中进行模式匹配和搜索替换操作。它在编程语言、脚本系统以及各种数据处理场景中广泛应用。正则表达式由字符序列组成,可以用来验证输入是否符合特定规则,或者从...

    正则表达式经典案例学习讲解

    正则表达式是JavaScript中一个非常重要的知识点,它可以帮我们快速地处理和匹配字符串。下面我们将通过一系列经典案例来学习和掌握正则表达式的使用。 匹配结尾的数字 在JavaScript中,我们可以使用 /\d+$/g 正则...

    正则表达式.rar 正则表达式.rar

    3. **文件名过滤**:在文件系统操作中,通过正则表达式筛选满足条件的文件或目录。 4. **文本分析**:在自然语言处理和数据挖掘中,正则表达式用于提取特定模式的信息。 正则表达式的语法差异: 虽然正则表达式的...

    正则表达式测试文件

    正则表达式(Regular Expression,简称regex)是用于在文本中匹配特定模式的强大工具,广泛应用于数据验证、搜索和替换等场景。这个“正则表达式测试文件”显然是为了帮助用户检验他们的正则表达式是否能够按照预期...

    正则表达式入门教程(pdf版

    例如,通配符在文件搜索中只能粗略地匹配文件名,而正则表达式能够匹配具体的文本内容和格式。 正则表达式由普通字符(例如字母和数字)以及特殊字符(称为“元字符”)组成。元字符在正则表达式中有特殊的含义,...

    Linux正则表达式.pdf

    正则表达式定义:正则表达式是一种字符串匹配模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。正则表达式是由普通字符(例如字符 a 到 z)以及特殊字符...

    正则表达式测试工具

    7. **Sniffer.RegexForms**:这个文件名可能指的是该工具的主程序或界面组件,可能包含用于构建和显示正则表达式测试表单的代码或资源。 在实际应用中,正则表达式可以用于多种场景,例如: - **数据验证**:在Web...

    正则表达式在程序开发中的应用

    正则表达式在程序开发中的应用十分广泛,无论是简单的字符串匹配还是复杂的文本处理,都能够提供极大的便利。通过上述介绍,我们可以看到正则表达式不仅能够提高代码的可读性和维护性,还能够简化许多常见的编程任务...

Global site tag (gtag.js) - Google Analytics