import re
s = r'^(?P<path>(?:[a-zA-Z]:)?\\(?:[^\\\?\/\*\|<>:"]+\\)+)(?P<filename>(?P<name>[^\\\?\/\*\|<>:"]+?)\.(?P<ext>[^.\\\?\/\*\|<>:"]+))$'
file_dir = r'd:\asdf\sdf\sd.txt'
res = re.search(s, file_dir)
print(res)
if res:
print(res.group())
# func
def isRulePath(file_path):
re_path = r'^(?P<path>(?:[a-zA-Z]:)?\\(?:[^\\\?\/\*\|<>:"]+\\)+)' \
r'(?P<filename>(?P<name>[^\\\?\/\*\|<>:"]+?)\.' \
r'(?P<ext>[^.\\\?\/\*\|<>:"]+))$'
path_flag = re.search(re_path, file_path)
if path_flag:
print(path_flag.group())
rule_path = path_flag.group()
return rule_path
else:
print("Invalid path")
return False
print(isRulePath(file_dir))