我有一个如下所示的序列:
my $seq = "D\IKLR\LK/Q";
Run Code Online (Sandbox Code Playgroud)
我想要做的是将序列分解为单个字母.
所以我希望得到:
my $var = ['D', '\', 'I', 'K', 'L', 'R', '\', 'L', 'K','/' ,'Q'];
Run Code Online (Sandbox Code Playgroud)
但为什么这样做不会:
my @chars = split(//,$seq);
print Dumper \@chars;
Run Code Online (Sandbox Code Playgroud)
它改为:
my $var = ['D', '\\', 'I', 'K', 'L', 'R', '\\', 'L', 'K', 'Q'];
Run Code Online (Sandbox Code Playgroud)
做正确的方法是什么?
你得到的正是你想要的.
代表单一的方式\是'\\',而不是'\'如你预期的,因为\在'\'转义第二个'使该字符串不完整的,但Data::Dumper总是可以返回值eval,因为它是Perl代码编.
但是打印通过循环打印阵列的各个元素将打印出来\.
| 归档时间: |
|
| 查看次数: |
137 次 |
| 最近记录: |