Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我的perl命令行替换不起作用?_Perl - Fatal编程技术网

为什么我的perl命令行替换不起作用?

为什么我的perl命令行替换不起作用?,perl,Perl,我正在运行此功能,但它似乎无法替代任何功能: perl -p -i -e 's/page?user_id=/page?uid=/g' * 我做错了什么 我想将page?user\u id=替换为page?uid=,因此,如果要搜索“?”而不是可选的“e”,则需要对其进行转义。使用“\”转义: 试一试 s/page\?user\u id=/page?uid=/g,因此如果要搜索“?”而不是可选的“e”,则需要对其进行转义。使用“\”转义: 试一试 s/page\?user\u id=/page?

我正在运行此功能,但它似乎无法替代任何功能:

perl -p -i -e 's/page?user_id=/page?uid=/g' *
我做错了什么

我想将
page?user\u id=
替换为
page?uid=

,因此,如果要搜索“?”而不是可选的“e”,则需要对其进行转义。使用“\”转义:

试一试

s/page\?user\u id=/page?uid=/g

,因此如果要搜索“?”而不是可选的“e”,则需要对其进行转义。使用“\”转义:

试一试


s/page\?user\u id=/page?uid=/g

您还可以使用Quotemeta:

perl -pi -e 's/\Qpage?user_id=\E/page?uid=/g' file

作为旁注,我想你为什么不把
用户id
改成
uid

你也可以使用Quotemeta:

perl -pi -e 's/\Qpage?user_id=\E/page?uid=/g' file
作为旁注,我想你为什么不只把
user\u id
改成
uid