Python 将破折号和下划线排除为最后一个字符的正则表达式
我需要一个正则表达式来验证以下条件Python 将破折号和下划线排除为最后一个字符的正则表达式,python,regex,Python,Regex,我需要一个正则表达式来验证以下条件 1) include - (dash) and _ (underscore) as valid components. 2) cannot end with (dash) and (underscore). 我正在使用这个-^[A-Za-z0-9]+([-+[A-Za-z0-9]+)*$,但不确定如何包括第二个条件,即不能以破折号或下划线结尾。您可以使用这个: ^[^-_].*[^-_]$ 它不能以-或-=^[^--\u]开头,也不能以-或-=[^-\
1) include - (dash) and _ (underscore) as valid components.
2) cannot end with (dash) and (underscore).
我正在使用这个-^[A-Za-z0-9]+([-+[A-Za-z0-9]+)*$
,但不确定如何包括第二个条件,即不能以破折号或下划线结尾。您可以使用这个:
^[^-_].*[^-_]$
它不能以-
或-
=^[^--\u]
开头,也不能以-
或-
=[^-\u]$
结尾。您可以使用以下方法:
^[^-_].*[^-_]$
它不能以-
或-
=^[^--\u]
开头,也不能以-
或-
=[^-\u]$
结尾。请使用以下命令:
^.*[^-_]$
这允许从开始(^..*
)到结束($
)的任何字符序列使用非破折号或下划线([^-\]
)的字符。如果有效的非结束字符仅为字母加-\u
,则使用[A-Za-z0-9-\u]*
代替*
使用以下命令:
^.*[^-_]$
这允许从开始(
^..*
)到结束($
)的任何字符序列使用非破折号或下划线([^-\]
)的字符。如果有效的非结束字符仅为字母加-\u
,则使用[A-Za-z0-9-\u]*
代替*
以破折号/下划线结尾的字符串是否与正则表达式匹配?如果在测试时没有,那么你的正则表达式已经在做了!以破折号/下划线结尾的字符串是否与正则表达式匹配?如果在测试时没有,那么你的正则表达式已经在做了!它只要求结束,不要求开始。除此之外,我会投赞成票。它只要求结束,而不是开始。除此之外,我会投票赞成。更改为^.+[^-\]$
甚至会避免匹配空字符串。@jasonaler使用^..[^-\]$
已经禁止匹配空字符串,因为[^-\\\\/code>将至少匹配一个字符。更改为^.+[^-\\$
甚至会避免匹配空字符串。@jasonaler使用^*[^-\]$
已禁止匹配空字符串,因为[^-\]
将至少匹配一个字符。