gpt4 book ai didi

c# - 当你将一个参数传递给下一个参数时你怎么调用它

转载 作者:行者123 更新时间:2023-11-28 13:46:46 24 4
gpt4 key购买 nike

我注意到很多代码中人们都会执行以下操作:

myClass.someMethod(something here, $1);

$1 正在从“这里的东西”中获取值?

这叫什么?我好像到处都找不到?但这一步,过程在正则表达式的情况下使用得很多..

最佳答案

您经常会在正则表达式中看到这种情况,其中 $1 表示您要转入新值的捕获组

例如,假设我们正在为我们的网站构建一个推文解析器。我们希望在推文中找到@引用,并将它们转换为指向这些特定帐户的链接:

// Our Tweet
$t = "I am @jonathansampson, and I work with @appendTo.";

// Find every occurence of @something, capture 'something'
echo preg_replace("/@([a-z]+)/i", "<a href='http://twitter.com/$1'>$0</a>", $t);

请注意,我们会匹配 @something 的每次出现,但我们将用户名部分包装在 () 中,以便我们可以在我们的替换文本。整个模式由 $0 表示,它将保存从 @ 到用户名中最后一个字符的完整值。

JavaScript 也是如此:

var tweet = "I am @jonathansampson, and I work with @appendTo.",
patrn = /@([a-z]+)/gi,
links = tweet.replace(patrn, "<a href='http://twitter.com/$1'>$&</a>");

变量links现在包含值:

console.log(links);
/*
"I am <a href='http://twitter.com/jonathansampson'>@jonathansampson</a>, and
I work with <a href='http://twitter.com/appendTo'>@appendTo</a>."
*/

您可能会注意到,我在 JavaScript 中使用 $& 来获取整个匹配模式,而在 PHP 中使用 $0 - 我们必须在生活中处理这些差异。抱歉;)

关于c# - 当你将一个参数传递给下一个参数时你怎么调用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13726201/

24 4 0
文章推荐: swift - 试图计算时差,但收到否定答案
文章推荐: HTML 表格占页面的 100% 以上
文章推荐: html - 从 Uls 而不是