import re
regex = re.compile(r"('|\"|)([Pp]assword|[Ss]ecret|[Aa]piKey|[Pp]rivateKey)('|\"|)(\s)?(:|=)(\s)?('|\")(.*)('|\")")
test_str = ("'password':'asdf'\n"
"'password' :'asdf'\n"
"'password': 'asdf'\n"
"'password' : 'asdf'\n\n"
"'password'='asdf'\n"
"'password' ='asdf'\n"
"'password'= 'asdf'\n"
"'password' = 'asdf'\n\n"
"\"password\":\"asdf\"\n"
"\"password\" :\"asdf\"\n"
"\"password\": \"asdf\"\n"
"\"password\" : \"asdf\"\n\n"
"\"password\"=\"asdf\"\n"
"\"password\" =\"asdf\"\n"
"\"password\"= \"asdf\"\n"
"\"password\" = \"asdf\"\n\n"
"password=\"asdf\"\n"
"password =\"asdf\"\n"
"password= \"asdf\"\n"
"password = \"asdf\"\n\n"
"password='asdf'\n"
"password ='asdf'\n"
"password= 'asdf'\n"
"password = 'asdf'\n\n"
"password=asdf\n"
"password =asdf\n"
"password= asdf\n"
"password = asdf\n\n"
"Password=asdf\n\n"
"secret = \"asdf\"\n"
"Secret='asdf'\n\n"
"asdfpassword=asdf\n"
"emailPassword = soreeeaukr,so;d[\"asdfasdf\"];\n"
"asdfasdfpasswordasdfasdf\n")
matches = regex.finditer(test_str)
for match_num, match in enumerate(matches, start=1):
print(f"Match {match_num} was found at {match.start()}-{match.end()}: {match.group()}")
for group_num, group in enumerate(match.groups(), start=1):
print(f"Group {group_num} found at {match.start(group_num)}-{match.end(group_num)}: {group}")
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html