题
当正则表达式被@符号包围时,它是什么意思?这是否意味着与斜线环绕不同?什么时候@x或@i到底是什么时候?现在我想一想,周围的斜线甚至意味着什么?
背景
我看到了由John Kugelman发布的StackOverflow答案,其中他展示了严肃的正则表达式技巧.
现在,我习惯于看到被斜线包围的正则表达式
/^abc/
Run Code Online (Sandbox Code Playgroud)
但是他使用了@符号包围的正则表达式:
'@
^%
(.{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'
Run Code Online (Sandbox Code Playgroud)
事实上,它似乎是这样的格式:
@^abc@x
Run Code Online (Sandbox Code Playgroud)
在试图谷歌这意味着什么(谷歌这是一个棘手的问题!),我也看到了格式:
@^abc@i
Run Code Online (Sandbox Code Playgroud)
很明显x和i不是匹配的字符.
这一切意味着什么?
提前感谢任何和所有回复,
-gMale
周围的斜杠只是正则表达式的分隔符.你可以使用任何角色(afaik)来做到这一点 - 最常用的是/,我见过的其他一些常用的是#
换句话说,@whatever@i基本上与/whatever/i(i是不区分大小写的匹配的修饰符)相同
如果你的正则表达式包含该字符,你可能想要使用除/之外的其他内容的原因.你可以避免逃避它,类似于使用''代替字符串而不是"".
| 归档时间: |
|
| 查看次数: |
370 次 |
| 最近记录: |