我想使用python检测变量字符串,如果它包含以下其他内容,即800m2,
所以例如
如果string =“820m2 bla bla”,那么boolean = false, 但如果string =“340m2”则布尔值为真
答案 0 :(得分:1)
您可以使用正则表达式r'^\d+m2$'
(re
module)来匹配此字符串模式:
>>> pattern = re.compile(r'^\d+m2$') # assuming that m2 == square meter
>>> bool(pattern.search("340m2"))
True
>>> bool(pattern.search("820m2 bla bla"))
False
正则表达式解释:
^
表示"以" \d
表示"数字" +
表示"一个或多个" (在这种情况下:"一个或多个数字")m2
表示" m2"字面上$
表示"以" 所以,我们得到了表达式:"匹配以一个或多个数字开头并以' m2'"结束的字符串。
答案 1 :(得分:0)
使用正则表达式:
>>> import re
>>> bool(re.search('^\d+m\d+$', "820m2 bla bla"))
False
>>> bool(re.search('^\d+m\d+$', "340m2"))
True
\d
匹配任何数字字符。 \d+
匹配一个或多个数字。
^
匹配字符串的beginnig,$
匹配字符串的末尾。