如何编写正则表达式以接受连字符但不是强制的。
因为文件夹名称中可以包含连字符,有时则没有。
当我尝试这个时:
r'^(?P<event_folder_name>[\w-]+)/$/result
它只接受连字符
如果我尝试这样:
r'^(?P<event_folder_name>\w+)
如果包含连字符,它不会接受它。
我怎样才能让它接受这两种情况。
谢谢。
最佳答案
首先,$ 符号匹配字符串的结尾。正则表达式中它后面的任何内容都将被丢弃。
其次,你的第一条规则对我来说似乎没问题(当然表达式中间的 $ 除外)。 [\w-]+
表示任何字母数字字符 (\w
) 或连字符 (-
) 一次或多次 ([] +
)。
关于python 正则表达式可选匹配连字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24151165/