gpt4 book ai didi

php - 正则表达式中的波浪号运算符

转载 作者:IT王子 更新时间:2023-10-29 00:42:40 26 4
gpt4 key购买 nike

我想知道正则表达式中波浪符运算符的含义是什么。

我有这个声明:

if (!preg_match('~^\d{10}$~', $_POST['isbn'])) {
$warnings[] = 'ISBN should be 10 digits';
}

我找到了解释波浪号含义的文档:~

它说 =~ 是一个 perl 运算符,意思是根据这个正则表达式运行这个变量。

但为什么我的正则表达式包含两个波浪号运算符?

最佳答案

在这种情况下,它只是用作分隔符。

一般来说,在PHP中,正则表达式的第一个和最后一个字符是“分隔符”,用于标记匹配部分的开始和结束位置(以防你想在末尾添加修饰符,如ungreedy等)

通常,PHP 从一个字符串中的第一个字符(作为正则表达式)开始计算,匹配它的第二次出现作为第二个分隔符。当您在文本中出现普通分隔符(例如,在文本中出现 /)时,这很有用 - 这意味着您不必做尴尬的事情。

匹配分隔符设置为“/”的“//

/\/\//

用“#”分隔符匹配“//

#//#

关于php - 正则表达式中的波浪号运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/938100/

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