c++ - C++:正则表达式模式
问题描述
我得到了一个正则表达式模式:(~[AZ]){10,30}(感谢 KekuSemau)。我需要编辑它,所以它会跳过 1 个字母。所以它会像下面一样。
Input: CABBYCRDCEBFYGGHQIPJOK
Output: A B C D E F G H I J K
解决方案
每次迭代只需匹配两个字母,但只捕获第二部分。
(?:~[A-Z](~[A-Z])){5,15}
直播:https ://regex101.com/r/pIAxH8/1
我将重复计数({} 中的位)减少了一半,因为新的正则表达式一次匹配两个。
?:
in位禁用组的(?:...)
捕获。
推荐阅读
- android-studio - Android Studio 中的模块名称
- vue.js - 调用Vue过滤器动态崩溃组件
- corda - 如何向 Corda 帐户添加额外信息?
- python - Python读取字符串对象并搜索格式
- list - 如何为箭头写下序列?
- python - 将多个值发布到 django rest 框架中的单个字段?
- excel - 如何在 excel 中编辑超链接以同时打开 .doc 和 .docx 版本
- python - 从每一行的文本文件中提取子字符串?
- javascript - 使用什么方法来存储简单的 Web 应用程序项目的数据?
- javascript - 如何使用 addEvenListener("click", ()=>function(array)) 将单击按钮的 innerHTML 推送到数组中