特殊字符什么时候不要转义

特殊字符什么时候不要转义

这题里面的第一个!为啥不要转义?

$string = '?<>,./!';
$res = preg_quote($string);
var_dump($res);

我定义的字符串里面!他反而给转义了?为啥

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕查理 2019-08-23 17:57:44

您好,正则表达式特殊字符有: . \ + * ? [ ^ ] $ ( ) { } = ! < > | : - 

所以同学的代码中!进行了转义。

题目中的!转义或者不转义都是可以成功的。因为!在使用时是(?!pattern)格式,所以不转义不会影响。祝学习愉快!

  • 提问者 慕运维1594908 #1
    什么是pattern格式?
    2019-08-23 19:06:55
  • 好帮手慕查理 回复 提问者 慕运维1594908 #2
    您好,(?!pattern):非获取匹配,正向否定预查,在任何不匹配pattern的字符串开始处匹配查找字符串,该匹配不需要获取供以后使用。例如“Windows(?!95|98|NT|2000)”能匹配“Windows3.1”中的“Windows”,但不能匹配“Windows2000”中的“Windows”。祝学习愉快!
    2019-08-23 19:17:07
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师