作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在正确设置正则表达式方面遇到了问题。我正在寻找以下字符串中的特定数字。例如,下面是一些字符串以及我正在使用的正则表达式
matcher = re.compile(r'(?<=[/\- ])([0-9]+)')
string = 'Redundant 100/70/50/50-0/0/0/0; EX-SEP ANN IMPLANT MAX. '
string2 = 'Big High 200/40/40/0/0-80/60/40/0/0; EX-WP 9months 7. '
结果是
['100', '100', '85', '50', '0', '0', '0', '0']
['100', '80', '50', '0', '0', '80', '60', '40', '0', '0', '9', '7']
例如,我想找出一种方法来仅获取“/”旁边的数字,而不获取第二个字符串中的“9”和“7”。我找不到执行此操作的方法,并尝试使用后视表达式,但如果不检索字符串中的其他数字,则无法只获得我想要的数字。
这对我来说是全新的,对于为什么我没有得到每个字符串的预期答案的任何帮助,我将不胜感激
最佳答案
您可以匹配接近 /
的数字序列或 -
使用
(?<=[/-])[0-9]+|[0-9]+(?=[/-])
参见 regex demo和正则表达式图:
详细信息
(?<=[/-])[0-9]+
- 一个或多个具有 /
的数字或 -
在前面|
- 或者[0-9]+(?=[/-])
- 一个或多个具有 /
的数字或 -
紧接着。关于python - 无法找到具有前瞻/后视功能的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64449159/
我是一名优秀的程序员,十分优秀!