regex - 返回第一个只有大写字母的序列的正则表达式是什么?请参阅下面的一些示例
问题描述
我要返回的示例:
S:\Help\Help\TRN LN
--> 我想退货TRN LN
S:\Help\Help\BBBY\Test
--> 我想退货BBBY
S:\Help\Help\IBM\Test\OLD
--> 我想退货IBM
我已经尝试了以下方法,它适用于我有一个全部大写的单词,但它不适用于上面我想返回 TRN LN 的第一个示例。我如何修改它以访问 TRN LN?
我试过了:
[A-Z]+[A-Z]+?[A-Z]\b
解决方案
如果那么您可以首先使用否定字符类here will always be 1 backslash before the phrase
匹配至少一个反斜杠 [^
匹配反斜杠后,您可以在捕获组中捕获匹配的 2 个或更多大写字符 AZ 的第一次出现。
^[^\\\r\n]*\\.*?\b([A-Z]{2,}(?: [A-Z]{2,})*)\b
^
字符串的开始[^\\\r\n]*\\
匹配 0+ 次而不是反斜杠或换行符,然后匹配\
.*?
匹配除换行符以外的任何字符非贪婪\b([A-Z]{2,}(?: [A-Z]{2,})*)
在组 1中的单词边界之间捕获 2 个或更多大写字符,可选重复空格和 2 个大写字符。
推荐阅读
- caching - 是否存在具有多个键指向单个值的特性的服务器端缓存系统?
- c++ - 如何从其他函数访问主函数中的变量
- passwords - 想要将开放 WiFi 网络中的密码字段(在智能手机连接期间 - 无需密码登录)用于其他目的 - 可能吗?
- ros - 重新定义全局符号:创建启动文件时出现 pi 错误
- python - ValueError:无法将字符串转换为浮点数:“是的,策略”同时适合我的逻辑回归模型
- mysql - 如何计算百分比差异 - mysql?
- c - 返回字符串指针在C中得到错误的字符串
- python - Django选择和删除帖子
- spring-batch - 读取平面文件时,多线程步骤如何在内部工作?
- html - 如何根据屏幕大小断点更改边距大小?