请教一下mysql下的正则替换怎么写 替换引号内的随机内容

请教一下mysql下的正则替换怎么写 替换引号内的随机内容,第1张

正则表达式:"(.*?)"

完整的PHP程序如下:

<?php $str = 'a:1:{i:609s:15:"河北省石家庄市"}'$pattern = '#"(.*?)"#i' preg_match_all($pattern, $str, $matches) print_r($matches[1][0])?>

这就要从双引号单引号的作用讲起:

双引号里面的字段会经过编译器解释然后再当作HTML代码输出,但是单引号里面的不需要解释,直接输出。例如:

$abc='I love u'

echo $abc //结果是:I love u

echo '$abc'//结果是:$abc

echo "$abc"//结果是:I love u

所以在对数据库里面的SQL语句赋值的时候也要用在双引号里面SQL="select a,b,c from ..."

但是SQL语句中会有单引号把字段名引出来

例如:select * from table where user='abc'

这里的SQL语句可以直接写成SQL="select * from table where user='abc'"

但是如果象下面:

$user='abc'

SQL1="select * from table where user=' ".$user." ' "对比一下

SQL2="select * from table where user='abc' "

我把单引号和双引号之间多加了点空格,希望你能看的清楚一点。

也就是把'abc' 替换为 '".$user."'都是在一个单引号里面的。只是把整个SQL字符串分割了。

SQL1可以分解为以下3个部分

1:"select * from table where user=' "

2:$user

3:" ' "

字符串之间用 . 来连接,这样能明白了吧。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8697506.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-20
下一篇 2023-04-20

发表评论

登录后才能评论

评论列表(0条)

保存