我试图解析包含相似结构的一行,并根据内容返回True
或False
。
是否可以在不使用正则表达式的情况下使“内联”搜索更加严格?
我想做类似的事情:
line = "nios2 arm64"
if "arm" in line:
print("Not here!")
#because arm and arm64 are different
line = "arm arm64 nios2"
if "arm64" in line:
print("Here!")
简而言之,我想使其与完整模式匹配,因为当前如果一行中有arm64
,而我正在寻找arm
关键字,则它返回正结果,而对于{{ 1}}在arm64
行中搜索。
答案 0 :(得分:2)
if "arm" in line.split(' ')
应该可以工作。
答案 1 :(得分:0)
这是正则表达式实际上有用的罕见(我认为...)情况之一:
import re
line1 = "nios2 arm64"
line2 = "arm arm64 nios2"
pattern1 = r'\barm\b'
pattern2 = r'\barm64\b'
print(re.search(pattern1, line1))
print(re.search(pattern1, line2))
print(re.search(pattern2, line1))
print(re.search(pattern2, line2))
输出:
None
<re.Match object; span=(0, 3), match='arm'>
<re.Match object; span=(6, 11), match='arm64'>
<re.Match object; span=(4, 9), match='arm64'>