这个正则表达式是否意味着它必须以A开头,以Z结尾?
re.search("\A[0-9A-Za-z_-]+\Z", sometext)
答案 0 :(得分:7)
不,那些是anchors。
\A
表示字符串的开头,\Z
表示字符串的结尾。同样地,^
表示行首,$
表示行尾。
请参阅documentation for the re module。
\ A - 仅匹配字符串的开头。
\ Z - 仅匹配字符串的末尾。
答案 1 :(得分:1)
什么是“它”?
如果您正在谈论字符串。是的,确实如此:\A
表示开始字符串,\Z
表示字符串的结尾。
如果您正在谈论行(在字符串中),则必须插入边界运算符:
"^[0-9A-Za-z_-]+$"
^
(“插入符号”)指定一行的开头; $
(“美元符号”)指定一行的结尾。
如果你在谈论一个词:不,它不会;你没有指定单词的开头或结尾。
答案 2 :(得分:0)
只需删除'\'即可获得所需内容。
"^A[0-9A-Za-z_-]+Z$"