正则表达式匹配重复字符串python
我得到的字符串是: abc123abc123abc123 abc123 ABC123ABC123ABC123ABC123ABC123ABC123ABC123ABC123 etc(abc123的不同单位,我不知道重复的长度) 任务是提取第一个1和第一个a,最后一个c和最后一个3。是否有可能使用1个正则表达式执行此操作?如果可能,具体操作方式如何?我记录了重复单元的数量,根据这个数量,我可以用几个正则表达式执行任务,但如果可能的话,我想使用一个正则表达式。谢谢 编辑: 在真实的情况下。它更像是a:(a数字)bc:(a数字)1:(a数字)23:(a数字)等等,我必须捕捉第一个a数字,第一个1数字,最后一个c数字和最后一个3数字正则表达式匹配重复字符串python,python,regex,Python,Regex,我得到的字符串是: abc123abc123abc123 abc123 ABC123ABC123ABC123ABC123ABC123ABC123ABC123ABC123 etc(abc123的不同单位,我不知道重复的长度) 任务是提取第一个1和第一个a,最后一个c和最后一个3。是否有可能使用1个正则表达式执行此操作?如果可能,具体操作方式如何?我记录了重复单元的数量,根据这个数量,我可以用几个正则表达式执行任务,但如果可能的话,我想使用一个正则表达式。谢谢 编辑: 在真实的情况下。它更像是a:(
Jeff这是使用两个正则表达式最容易完成的<代码>“^(a)bc(1)23”和“ab(c)12(3)$”。可以合并这两个正则表达式,但正则表达式将变得非常不可读。这是使用两个正则表达式最容易做到的<代码>“^(a)bc(1)23”和“ab(c)12(3)$”。也许可以合并这两个,但正则表达式将变得非常不可读。我不太明白。你想找到他们的位置吗?因为如果你“提取”它们,第一个
a
与其他任何一个有何不同?在你的例子中,第一个a总是在开头,第一个1总是第四个字符,最后一个c总是右边的第四个字符,最后一个c是最后一个字符。那么为什么你需要一个正则表达式而不是x[0]、x[3]、x[-4]和x[-1]?是的,请澄清一下你的问题(预期的输入->输出,预期的字符串不匹配(如果有的话)…我不太明白。你想找到他们的位置吗?因为如果你“提取”它们,第一个a
与其他任何一个有何不同?在你的例子中,第一个a总是在开头,第一个1总是第四个字符,最后一个c总是右边的第四个字符,最后一个c是最后一个字符。那么为什么你需要一个正则表达式而不是x[0]、x[3]、x[-4]和x[-1]?是的,请稍微澄清一下你的问题(预期的输入->输出,以及预期不匹配的字符串(如果有的话)…我看不出这是为了什么?如果OP知道他的字符串是abc123
的重复,那么您的正则表达式将始终返回a
、1
、c
和3
。我在OP编辑后对答案进行了建模。我的示例不是为了文字代码,而是为了匹配OP的问题。我不明白这是为了什么?如果OP知道他的字符串是abc123
的重复,那么您的正则表达式将始终返回a
、1
、c
和3
。我在OP编辑后对答案进行了建模。我的示例不是为了文字代码,而是为了匹配OP的问题。