正则表达式中的"〜"是什么?

Mic*_*ael 8 php regex

可能重复:
正则表达式中的Tilde运算符

echo preg_replace_callback('~-([a-z])~', function ($match) {
    return strtoupper($match[1]);
}, 'hello-world');
Run Code Online (Sandbox Code Playgroud)

代码来自http://php.net/manual/en/functions.anonymous.php

我搜索了正则表达式中的"〜"并没有找到答案.

它有什么作用?

And*_*ong 11

PHP(和其他实现)中正则表达式的第一个和最后一个字符称为分隔符.通常,您会看到/正在使用,但在这种情况下,有人选择了~.在这里阅读更多.

不知道为什么~选择了; 可能是那个特定开发者的习惯.通常,/当正则表达式本身包含斜杠(例如匹配的URL)时,会选择不同的分隔符,因此每次都不需要转义斜杠.