Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在我的 bash 脚本中,我使用正则表达式来匹配一串变量赋值,例如:
我开发的正则表达式:\s*${varName}\s*\={0,1}\s*.*\s*;{0,1}
\s*${varName}\s*\={0,1}\s*.*\s*;{0,1}
这个正则表达式可以匹配上面的每个实例,但也可以匹配另一个我不想要的实例,即VarValue
我想不出办法让我的正则表达式与VarValue实例不匹配。
\s*{varName}(?:\s*=\s*|\s+)(\w+)
我没有修改你的正则表达式,因为它看起来很复杂,但是这个会匹配上面列出的所有情况而不匹配VarValue。您的数据将在第 1 组中。
VarValue
在这里玩正则表达式。
修改你的:
\s*${varName}(\s?[\s\=]\s?).+\s*;{0,1}