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.
我希望能够捕获我的项目的“主机变量”——当我在本地运行项目时显示“mlocal”的位,或者在 Moovweb 云上时显示 mstage/m/user1234。
变量 $host 包含站点的完整 URL,所以我不能使用它。我希望能够获取 URL 的第一位(例如:mlocal.site.com - 我想获取“mlocal”)并将其设置在一个新变量中。
我正在尝试这样:
var("host") { $my_var = capture(/^\w+/) }
但这似乎不起作用。
为了仅捕获主变量,您必须在正则表达式中使用括号创建一个捕获组,然后使用组号提取主变量。这是一个有关如何执行此操作的示例:
$host { capture(/(\w+)\..*/) { $hostvar = $1 } } log($hostvar)
这应该将主机变量记录到控制台。请注意捕获参数中的正则表达式如何在第一部分周围包含括号,该部分随后被显式句点分割,然后我们匹配字符串的其余部分,但在捕获组之外。一旦我们在捕获的范围内,我们可以通过使用$1变量来提取捕获组。
$1