仅允许文本和数字前的多个0,不允许[1-9]

斯瓦内普尔

我正在尝试将excel文件中的文档编号与文件夹中的文件进行匹配。

示例文件目录:

A)“ C:\ Users \ directory \ Supplier \ Invoice1.pdf”

B)“ C:\ Users \ directory \ Supplier \ Invoice001.pdf”

C)“ C:\ Users \ directory \ Supplier \ Invoice101.pdf”

D)“ C:\ Users \ directory \ Supplier \ Invoice10.pdf”

E)“ C:\ Users \ directory \ Supplier \ Invoice21.pdf”

我的正则表达式模式匹配A,B和C,但只能匹配A和B。

Pattern = "(^|[^1-9])(DocNumber)([^0-9]|$)",其中DocNumber = 1(在我的示例中,也可以是任何其他数字)。

关于如何改进公式以不匹配C的任何想法?

注意:我看到与此类似的其他线程不受欢迎,所以我试图使问题更明确,因为其他线程没有为我提供解决方案。

约翰

尝试这样的事情: ^.*[\\\/][^0-9]*0*1\..*$

此处显示的示例:https : //regex101.com/r/O7RdEq/4

说明:

  • ^.*[\\\/] -将所有内容匹配到最后一个斜杠
    • [\\\/]-匹配单个反斜杠或单个正斜杠;请注意,两个斜杠都使用反斜杠进行转义。
  • [^0-9]*0*1\..*$ -匹配每个非数字,直到(包括)前导0,再加上您的文档编号,然后是文件扩展名
    • [^0-9]*-在可选的“ 0”之前匹配所有非数字;防止类似“ 101”的情况
    • 0*1 -文档编号前的可选“ 0”(在这种情况下为1)
    • \..*$-匹配一个文字.,然后匹配任何字符,直到行尾;应该处理文件扩展名。

1之后的0*是,你在你的问题中提到的文件数量。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

需要两个不同的文本框,以仅允许数字0-9和1小数位

正则表达式:不允许用户输入使用 0 和 9 形成的重复数字

Android:仅允许1到9之间的数字的Edittext

infinispan 9'<eviction strategy =“ LRU” />'不允许使用

正则表达式允许 a-zA-Z0-9、空格、点、逗号、减号但不允许换行

SQL CHECK CONSTRAINT拒绝字母数字和特殊章程,并且仅允许从0到9的数字

AWS Cloud9不允许静态manifest.json,但允许CSS文件

精细上传器不允许再选择IE8和IE9中的多个文件

如何使用jQuery在HTML输入框中仅允许数字(0-9)?

Java 9模块名称中不允许使用哪些字符?

“此应用程序不允许查询方案cydia” IOS9错误

Zend Framework-Select Prompt不允许超过9个选项

Xcode 9,迦太基。iTunes Connect错误:“无效的捆绑包-不允许的LLVM检测”

“ /”不允许状态传递给AngularJs UI路由器中的“ / {用户名:[a-zA-Z0-9] {3,20}}”

使用 Firebase 9 模块化 API 进行用户注册时不允许身份验证/操作

JDK 9是否应该不允许Lambda Expression实例化,而在重写方法中引用了最终字段?

Infinispan 9,复制缓存正在过期,但不允许将它们从 JVM 堆中删除

Json 连续拟合数字并在每个 1-9 数字前添加一个 0

验证不允许使用特殊字符,但允许在rails中使用空格和数字

如何在输入类型的文本中不允许数字

使用preg_match,preg_replace仅允许aZ,0-9

如何创建一个正则表达式,不允许社会保险号中出现相同的 9 个重复数字,无论是否带有连字符?

Debian 9-仅将某些IP允许到MongoDB

Redis是否仅允许字符串表示但不允许数字值

进行输入时仅允许使用姓名,而不允许使用数字

Excel 数据验证中只需要允许数字 0-9、数字 0-9 以逗号分隔或字母 e 或 E

html中的电话字段验证,以允许数字和文本,但不允许@

计算9 ^(9 ^ 9)个完全数字的最快方法?

JS RegExp如何不允许特殊字符和数字?