首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >你对这个RegEx有什么理解?

你对这个RegEx有什么理解?
EN

Stack Overflow用户
提问于 2021-03-04 11:42:52
回答 2查看 62关注 0票数 1

我正在使用VBA并尝试将字符串拆分为三列,几乎所有的字符串都类似于Company Name 3567782 Agent Name.pdf

使用此模式,我希望匹配空格和数字(第一组)、数字(第二组)和空格之后的所有文本以及.pdf (第三组)之前的所有文本。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
strPattern = "^(.+)\n(\d{4,10})\n(.+).pdf"

我记得python中的空格是\s,但是在VBA中看到的是\n

你能帮我找到我想要的东西的正确图案吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-04 11:54:56

在我的评论中,我使用了https://regex101.com站点。还有其他的,但我觉得这个对我最有帮助。

当我把你的行刑

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
^(.+)\n(\d{4,10})\n(.+).pdf

和测试字符串

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Company Name 3567782 Agent Name.pdf

我注意到的第一件事是regex与测试字符串不匹配(请参见匹配信息下面的右侧)。

下面是我看到的几件事:

  1. \n是换行符,而不是空格。在regex中,空格是".
  2. Your last“。”在".pdf“中,它不是作为文字句点注册的,而是匹配任何字符的标记。要匹配文本句点,需要\.

如果我们改变这两种情况,它会返回三个组,它们似乎与您要寻找的内容相匹配。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
^(.+) (\d{4,10}) (.+)\.pdf

它看起来像是数字,你在寻找4到10位数字。如果这是正确的,看起来你的正则表达式是好的。您可以将少量示例字符串放入测试字符串区域,并确保它在所有情况下都能工作。

票数 0
EN

Stack Overflow用户

发布于 2021-03-04 16:00:30

我会使用这两种方法中的一种:(?:(?:([a-zA-Z]+\.?)|(\d+)))

抓住一个贪心的可能。允许使用.pdf或捕获数字

此版本不包括空格或\s

或者保持搜索的结构化,这样您就可以控制每一列的输入和输出--单词边界或字符串的开始--第一次捕获( ^(\w+\s\w+)|(\d+)|(\w+\s\w+\.\w+$) \b or ^ )--任何α数字字符--贪婪地使用任何α数字字符,然后是1 x空格(use \s*或\s+ (更多信息),然后是α数字贪婪的|(\d+) --更改-- \d+ --只捕获数字‘\(\w+\s\w+.\w+$)--类似于第一个组,但允许’。到字符串末尾的pdf和界(\G或$)。您可以选择构建“.”进入第一组喜欢我的最高答案,但为了整洁和更好的控制,我更喜欢第二。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66481949

复制
相关文章
谈谈你对volatile的理解
因为在多线程中,ABC 3个线程拿到主内存的数据s后,可能出现,A改了s的值正要刷回主内存的时候线程被挂起,这时候B线程改了s的值,当A线程再次开启时候还没来得及被通知就已经把自己改后的数据注入了,这时候就存在一个数据的丢失问题.
名字是乱打的
2022/05/13
4470
谈谈你对volatile的理解
说说你对索引的理解?
下表是MySQL常见的存储引擎InnoDB,MyISAM和Memory分别支持的索引类型
终码一生
2022/04/15
6000
说说你对索引的理解?
谈谈你对堆栈理解(初稿)
为了理解堆栈区别, 我对比 c++,java,APP,javascipt(vue,v8) ,node.js, solidity, 都提到一个共同概念-虚拟机. 1 以太坊 - 深入浅出虚拟机, 2 javaScript(V8 )的工作原理:引擎 3 c++虚拟内存。epoll_wait 4 Java虚拟机精讲 在一层一层构建过程中.各自实现了自己的 堆栈和loop 我初步判断 虚拟机2个重要组成部分就是--堆 栈和loop循环。
程序员小王
2019/05/05
1.5K0
谈谈你对堆栈理解(初稿)
谈谈你对ThreadLocal的理解
简单地说,就是用来隔离数据的。用ThreadLocal来保存的数据,只对当前线程生效,当前线程对该数据做的任何操作,对别的线程是不生效的。举个栗子一看便知:
贪挽懒月
2021/06/21
5120
谈谈你对ThreadLocal的理解
谈谈你对索引的理解?
在日常开发中,mysql存储引擎默认是用innoDB,存储引擎分为innoDB,myISAM,memory,innoDB支持事务,myISAM不支持事务,memory是在内存中,不存储在磁盘,所以memory适用于临时表,特性是mysql服务器重启之后,内存里的数据就会消失。
用户9919783
2022/07/29
2980
谈谈你对MVCC的理解
MVCC也是一道非常高频的面试题,今天我花两分钟时间给大家梳理一下。另外,我花了1个多星期把往期的面试题解析配套文档准备好了,想获取的小伙伴可以在我的煮叶简介中找到。
Tom弹架构
2022/08/22
5460
谈谈你对MVCC的理解
谈谈你对NoSQL的理解
有粉丝给我留言说,希望我更新一期关于NoSQ的视频,那今天,咱们就来聊一聊我对NoSQL的理解。如果你也有想要我分享的面试题,请在评论区告诉我,后续安排。
Tom弹架构
2022/09/22
6400
谈谈你对NoSQL的理解
说说你对servlet 的理解或者 servlet 是什么?「建议收藏」
Servlet(Servlet Applet),全称Java Servlet,是用Java编写的服务器端程序。而这些Servlet都要实现Servlet这个接口。其主要功能在于交互式的浏览和修改数据,生成动态Web内容。Servlet运行于支持Java的应用服务器中。
全栈程序员站长
2022/07/04
2440
说说你对servlet 的理解或者 servlet 是什么?「建议收藏」
简述你对ioc的理解_对剩余价值的理解总结
在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。理解好Ioc的关键是要明确“谁控制谁,控制什么,为何是反转(有反转就应该有正转了),哪些方面反转了”,那我们来深入分析一下:
全栈程序员站长
2022/09/30
5260
简述你对ioc的理解_对剩余价值的理解总结
来讲讲你对ThreadLocal的理解
面试的时候被问到ThreadLocal的相关知识,没有回答好(奶奶的,现在感觉问啥都能被问倒),所以我决定先解决这几次面试中都遇到的高频问题,把这几个硬骨头都能理解的透彻的说出来了,感觉最起码不能总是一轮游。
纪莫
2020/09/11
3340
面试题68(加深你对栈的理解_让你知道什么是栈)
面试例题1:(单选题)编号为123456789的火车经过如图11-1所示的轨道,从左边入口处移到右边出口处(每车必须且只能进临时轨道M一次,且不能再回到左边入口处)按照从左向右的顺序,下面的结果不可能的是? A 123456789 B 321987654 C 321456798 D 987651234 正确解析如下: 选项A中,123逐个去,45678入栈,再出栈变成87654,9再过去; 选项B中,123入栈,再出栈变成321,456789再入栈,变成987654; 选项C中,123入栈,再出栈变成3
Java学习
2018/04/17
5620
面试官:你对MySQL高性能优化有什么规范建议?
没有特殊要求(即Innodb无法满足的功能如:列存储,存储空间数据等)的情况下,所有表必须使用Innodb存储引擎(mysql5.5之前默认使用Myisam,5.6以后默认的为Innodb)。
Java_老男孩
2019/12/02
5020
springboot框架的理解_谈谈你对springmvc的理解
Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是 Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 Maven 整合了所有的 Jar 包,Spring Boot 整合了所有的框架。
全栈程序员站长
2022/09/23
6280
springboot框架的理解_谈谈你对springmvc的理解
​轻松掌握vuex,让你对状态管理有一个更深的理解
Vuex 是一个专为 Vue.js 应用程序开发的 状态管理模式 。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化
前端老鸟
2019/07/29
3.3K0
学算法有什么用?唉,对你来说,可能真没用
在我大一的时候,曾看过李开复老师的一篇著名的文章——《算法为魂》。这篇文章对我影响深远,甚至说改变了我的人生选择都不为过。
五分钟学算法
2019/05/06
1.1K0
学算法有什么用?唉,对你来说,可能真没用
面试官:说说你对slot的理解?slot使用场景有哪些?
在HTML中 slot 元素 ,作为 Web Components 技术套件的一部分,是Web组件内的一个占位符
@超人
2021/02/26
1.6K0
面试官:说说你对slot的理解?slot使用场景有哪些?
“语义搜索”是什么,对SEO有什么影响?
近日,SEO专家都在讨论语音搜索,随着百度手机客户端,语音搜索的上线,“语义搜索”越来越被大家开始重视,大家一致认为,它有可能在未来的几年里,改变SEO优化的业态,蝙蝠侠IT认为这并不代表SEO行业的没落,它只是从另外一个角度去解读,为此我们需要不断学习,跟上时代的步伐。
蝙蝠侠IT
2019/12/20
7440
“语义搜索”是什么,对SEO有什么影响?
修改dns对网速有什么影响
很多网友都不明白公共DNS是什么,以及它有什么作用和功能,修改dns会不会对网速有什么影响,针对这些问题,接下来带大家来详细了解下。百度、阿里巴巴、114dns均已正式上线了公共DNS服务,很多网友对比公共DNS是什么 ,都不够了解,公共DNS是什么?
李洋博客
2021/06/15
6.3K0
你好,谈谈你对前端路由的理解
作者:尼克陈 https://juejin.cn/post/6917523941435113486
用户4456933
2021/06/01
9910
你好,谈谈你对前端路由的理解
为了「理解」什么是对,人工智能还必须「理解」什么是不对
如今,计算机科学可以从汉斯事例学到很多。越来越多的研究表明,目前我们创造的绝大多数人工智能学习了足够知识,可以给出正确回答,但是,却没有真正理解信息。这就意味着人工智能很容易被欺骗。通过抗干扰研究,机器学习算法进一步得以改善。这个研究的代表人物,亦即文中提及的Ian Goodfellow 是前谷歌深度学习骨干研究人员之一,Bengio的得意弟子,已经加入OpenAI。 20世纪90年代初,德国驯马师和数学家Wilhelm von Osten 向世人宣布他的马可以做算术。几年来,Von Osten 遍游全国
镁客网
2018/05/28
5630

相似问题

你对这个项目有什么建议?

79

你对这个循环宏有什么看法?

30

你对这个Python错误有什么看法?

21

你对基于ip的电信有什么理解?

11

关于函数重载,你对printf ()函数有什么理解?

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文