我正在努力修复一些错误/添加功能到其他人建立的网站。任何人都可以告诉我以下的正则表达式做什么?我对正则表达式很熟悉,但我对这些想要完成的事情并不是最模糊的想法。
$qsReplace = preg_replace('/\\\t/', "\t", $qsReplace);
$qsReplace = preg_replace('/\\\/', '\\\\\\', $qsReplace);
$qsReplace = preg_replace('/\$([0-9])/','\$````~~~~$1', $qsReplace);
$queryString = preg_replace('/\$\`\`\`\`\~\~\~\~([0-9])/','\$$1', $queryString);
我怀疑那个编码的人有点奇怪,但我不确定。
答案 0 :(得分:2)
第三个找到一个美元符号后跟一个数字,并在数字和美元符号之间插入四个反引号和四个波浪号。第四个删除了这些反叛,并在一美元和数字之间倾斜。
我怀疑两者之间会有更多的数据杂乱,希望没有任何输入可以包含四个反对,然后是四个倾斜......
答案 1 :(得分:1)
(感谢chx 3& 4)
答案 2 :(得分:1)
将\t
转换为实际标签
$qsReplace = preg_replace('/\\\t/', "\t", $qsReplace);
转义双反斜杠,可以用addslhases();
$qsReplace = preg_replace('/\\\/', '\\\\\\', $qsReplace);
找到一个$
后跟一个数字,例如$01
,并替换为backtick
x4 + ~
x4(pre)
$qsReplace = preg_replace('/\$([0-9])/','\$````~~~~$1', $qsReplace);
删除$
,backtick
,~
$queryString = preg_replace('/\$\`\`\`\`\~\~\~\~([0-9])/','\$$1', $queryString);
显然,最后一位程序员并不了解一些事情。