gpt4 book ai didi

php - 正则表达式被@符号包围是什么意思?

转载 作者:可可西里 更新时间:2023-11-01 00:37:53 25 4
gpt4 key购买 nike

问题

正则表达式被@符号包围是什么意思?这是否意味着不同于被斜线包围的东西?当@x 或@i 结束时呢?现在想想,周围的斜杠到底是什么意思?


背景

我看到了this StackOverflow answer ,由约翰·库格曼 (John Kugelman) 发布,他在其中展示了严格的正则表达式技能。

现在,我习惯于看到正则表达式被斜线包围,如

/^abc/

但是他使用了一个被@符号包围的正则表达式:

'@
^%
(.{2}) # State, 2 chars
([^^]{0,12}.) # City, 13 chars, delimited by ^
([^^]{0,34}.) # Name, 35 chars, delimited by ^
([^^]{0,28}.) # Address, 29 chars, delimited by ^
\?$
@x'

其实好像是这样的格式:

@^abc@x

在尝试用谷歌搜索这意味着什么的过程中(这是一个很难用谷歌搜索的问题!),我还看到了格式:

@^abc@i

很明显 xi 不是匹配的字符。

那么这一切意味着什么???

提前感谢所有回复,

-g男

最佳答案

周围的斜杠只是正则表达式分隔符。您可以使用任何字符 (afaik) 来执行此操作 - 最常用的是/,其他我见过的比较常用的是 #

换句话说,@whatever@i 本质上与 /whatever/i 相同(i 是不区分大小写匹配的修饰符)

如果您的正则表达式包含该字符,您可能想要使用除/之外的其他内容的原因。您可以避免对它进行转义,类似于对字符串使用 '' 而不是 ""。

关于php - 正则表达式被@符号包围是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3693861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com