python - 如何从特定字母开始并在遇到数字时结束?

标签 python regex string

我有一些示例字符串:

s = 'neg(able-23, never-21) s2-1/3'
i = 'amod(Market-8, magical-5) s1'

我遇到了一个问题,我可以使用:

word = re.search(r's\d$', s)

但是如果我想知道里面是否包含's2-1/3',那是行不通的。 是否有可用于“s#”和“s#+”两种情况的正则表达式? 谢谢!

最佳答案

除了数字之外,您还可以允许捕获字符 "-""/"。很难在这里说出你想要的确切模式,但像这样的东西会从你的例子中捕获 "s2-1/3":

import re

s = "neg(able-23, never-21) s2-1/3"

word = re.search(r"s\d[-/\d]*$", s)

关于python - 如何从特定字母开始并在遇到数字时结束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57984780/

相关文章:

正则表达式/Vim : Matching everything except a pattern, 哪里模式是多行的?

python - __str__ 来 self 自己的矩阵,python

python - 在500 HTTP服务器错误后重试,从文件中使用的最后一行继续

python - 如果一行包含专用区域字符,如何删除它?

python - Pymodm - Mongodb,如何在集合中创建索引

java - 替换字符串以与条件完全匹配

mysql - Distinct,REGEXP应用于MYSQL中的Field和CONCAT_GROUP去除存储过程中的重复单词

java - 检查一个字符串是否匹配除另一个字符串之外的所有字符

regex - 字符串模式匹配问题

python - _mysql_exceptions.OperationalError