Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/10.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/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-can';t删除字符串末尾的尾随字符_Perl - Fatal编程技术网

Perl-can';t删除字符串末尾的尾随字符

Perl-can';t删除字符串末尾的尾随字符,perl,Perl,我在字符串的末尾有一些尾随字符 print "JH 4 - app: $application \n"; app: peregrinevwap^_^_ 你知道他们为什么会在那里吗?我怎样才能把他们移走。我尝试了chomp命令,但没有成功。请查看tr//cd操作符以清除不需要的字符。 它记录在“perldoc perlop”中 将删除字符串中除字母以外的所有内容 $application =~ tr/^_//d; 将删除所有“^”和“u”字符 如果只想在某些字符位于字符串末尾时删除它们,请使

我在字符串的末尾有一些尾随字符

print "JH 4 - app: $application \n";

app: peregrinevwap^_^_

你知道他们为什么会在那里吗?我怎样才能把他们移走。我尝试了
chomp
命令,但没有成功。

请查看
tr//cd
操作符以清除不需要的字符。 它记录在“
perldoc perlop
”中

将删除字符串中除字母以外的所有内容

$application =~ tr/^_//d;
将删除所有“^”和“u”字符

如果只想在某些字符位于字符串末尾时删除它们,请使用s//search/replace操作符和正则表达式以及
$
锚来匹配字符串末尾

下面是一个例子:

s/[\^_]*$//;

我们希望下划线不会出现在字符串的末尾,否则您无法自动将它们与这些不需要的字符分开。

请查看
tr//cd
操作符以除去不需要的字符。 它记录在“
perldoc perlop
”中

将删除字符串中除字母以外的所有内容

$application =~ tr/^_//d;
将删除所有“^”和“u”字符

如果只想在某些字符位于字符串末尾时删除它们,请使用s//search/replace操作符和正则表达式以及
$
锚来匹配字符串末尾

下面是一个例子:

s/[\^_]*$//;

希望下划线不会出现在字符串的末尾,否则您无法自动将它们与这些不需要的字符分开。

您确定这些字符实际上是
^
字符吗?
^
也可以表示Ctrl下划线、ASCII字符0x1F(单位分隔符)。(我从未见过有人使用过这个角色,但你永远不知道。)

如果事实上是这样,您可以使用以下方法删除它们:

$application =~ s/\x1F//g;

您确定这些字符实际上是
^
\
字符吗?
^
也可以表示Ctrl下划线、ASCII字符0x1F(单位分隔符)。(我从未见过有人使用过这个角色,但你永远不知道。)

如果事实上是这样,您可以使用以下方法删除它们:

$application =~ s/\x1F//g;

你是在Windows或Linux操作系统下运行的?这是在Linux OSU上运行的,在那里你编辑了Yor脚本。直接在vix上的UNIX框中。如果它们在字符串的中间,它们不是尾随字符(“*”是在最后的“^”之前)。你是在Windows或Linux操作系统下运行的?这是在Linux上运行的,在那里你编辑了Yor脚本,直接在vix上的UNIX框中。如果它们在字符串的中间,它们不是尾随字符(“是”)在最后一个“^”之前。在它们中:app:ninjak\u xlon这个问题是我在它们中有带“\u”的字符串:app:ninjak\u xlon