Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在任意位置精确匹配字符串中的两个字符_Python_Regex - Fatal编程技术网

Python 如何在任意位置精确匹配字符串中的两个字符

Python 如何在任意位置精确匹配字符串中的两个字符,python,regex,Python,Regex,如何精确匹配字符串中的两个相同字符,如“4003”、“1030” import re s='1030' if re.search('0{2}',s): print(True) 但是上面的代码只匹配“1002”而不匹配“1030”您必须使用regex?只需使用.count() 假设您不必使用正则表达式: 请注意,一个包含4个字符的字符串正好有一对复制字符,当且仅当它有3个唯一字符时。因此: 制作一组它的字符 检查集合中是否有3个不同的元素 此代码仅检查字符串number1中的f.e.索引3是否

如何精确匹配字符串中的两个相同字符,如“4003”、“1030”

import re
s='1030'
if re.search('0{2}',s):
print(True)

但是上面的代码只匹配“1002”而不匹配“1030”

您必须使用
regex
?只需使用
.count()


假设您不必使用正则表达式:

请注意,一个包含4个字符的字符串正好有一对复制字符,当且仅当它有3个唯一字符时。因此:

  • 制作一组它的字符
  • 检查集合中是否有3个不同的元素

此代码仅检查字符串
number1
中的f.e.索引3是否等于字符串
number2
中的索引3

 number1 = '1002'
 number2 = '1030'
 counter = 0

 for i in number1:
     if number1[counter] is number2[counter]:
        print("It's a match")
     counter = counter + 1

你必须使用正则表达式吗?你基本上是在做与之相反的事情。如果你能提供额外的上下文,比如:1)字符串的长度总是4吗?2) 它必须是任何2个字符还是可以专门硬编码的字符(例如,专门用于0等)像
aabb
这样的单词是否符合“完全相同的2个字符”的标准?取决于你如何看待它,这可以解释为“4个相同的字符”。OP并没有说重复字符保证为0。嗯,我也这么认为,但他们的示例有“0{2}”硬编码,所以我认为这是他们的具体用例。让我们等待用户的澄清。我的要求是,能够在一个4位数字中准确地找到两个零。你能给我正则表达式吗?你不能用集合来确定一个字符是否正好出现两次。例如,
ab
abb
都会变成
{'a',b'}
@aranfey,这就是解释的重点。“请注意,一个包含4个字符的字符串正好有一对复制字符,当且仅当它有3个唯一字符。”。我没有直接检查“一个字符正好出现两次”,而是检查“有3个不同的字符”。这仍然是错误的,因为
aabb
符合标准,没有3个不同的字符。@Aran Fey OP说“完全相同的两个字符”。。。嗯,我想结束这个问题比较好。这可以用多种不同的方式来解释。
 number1 = '1002'
 number2 = '1030'
 counter = 0

 for i in number1:
     if number1[counter] is number2[counter]:
        print("It's a match")
     counter = counter + 1