python - 我可以在下一组正则表达式中“重用”一个字符吗?
问题描述
如果它们出现在某个“标记”字符之前或之后,我想查找字符串中出现的字符。
所以我的标记是-
,字符串是"a b-c d"
. 我想找到b
并按c
那个顺序。
我试过
re.findall(r'(-[a-z]|[a-z]-)','a b-c d')
显然只能得到
['b-']
我也试过
re.findall(r'([a-z]-[a-z])','a b-c d')
我得到了结果
['b-c']
,这更好,但我仍然需要对该结果进行后处理才能获得单个字符b
和c
.
有没有解决这个问题的一步法?
编辑
后续问题:字符串是"a b-c-d e"
,我想得到类似的东西[('','a',''), ('','b','-'), ('-','c','-'), ('-','d',''), ('','e','')]
我有一种感觉,这要求太多了。
解决方案
更多组。
>>> re.findall(r'(([a-z])-([a-z]))','a b-c d')
[('b-c', 'b', 'c')]
而且由于您实际上并不关心原始...
>>> re.findall(r'([a-z])-([a-z])','a b-c d')
[('b', 'c')]
推荐阅读
- .net - Serilog 正在为指向一个物理文件路径的两个端点创建两个日志文件
- python - 将最低 y 值作为最底线
- python-3.x - 如何从网络主机获取 .py 文件
- r - 如何改变 `check_overlap = TRUE` 的行为?
- javascript - React Router 返回具有正确路径的空白页面
- typescript - 如何在 VS Code 中集成新的 TypeScript IntelliSense 文件?
- swift - 滑块中的自定义步骤集
- android - 如何创建项目标题文本在选择时消失的效果?
- sql - Laravel Eloquent 添加到表在增量列中返回 null
- javascript - 重用分离的元素