大部分情况下不用使用 $ 就好了,my var = "a var"; 是否存在这样的变量定义的语言

12 views
Skip to first unread message

方及道

unread,
Dec 29, 2012, 8:16:06 PM12/29/12
to perl...@googlegroups.com
Perl灵活,但要狂敲 $ 键。

是否有这样的语法的语言:

my var = "a var";

然后 $var == ${var} == var 呢。

Robin Lee

unread,
Dec 29, 2012, 10:23:15 PM12/29/12
to perl...@googlegroups.com
Perl里不带sigil默认是函数,也即是
func 等于 &func 而不是等于 $func
> --
> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
> 要在网络上查看此讨论,请访问 https://groups.google.com/d/msg/perlchina/-/cZ9jWooNjTQJ
> 要向此网上论坛发帖,请发送电子邮件至 perl...@googlegroups.com
> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+...@googlegroups.com
> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>

truncatei

unread,
Jan 3, 2013, 11:26:51 PM1/3/13
to perl...@googlegroups.com
$var ${var} 是一样的
要用var的话可以用常量 perldoc constant

不过常量不可变 :D


2012/12/30 方及道 <rungum...@gmail.com>:

> --
> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
> 要在网络上查看此讨论,请访问 https://groups.google.com/d/msg/perlchina/-/cZ9jWooNjTQJ
> 要向此网上论坛发帖,请发送电子邮件至 perl...@googlegroups.com
> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+...@googlegroups.com
> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

--
如果觉得无聊,您不妨访问Google Reader消遣 https://www.google.com/reader/view
要尝试黑版本Google,请访问 http://tinyurl.com/yk3yp7j

lihq

unread,
Jan 4, 2013, 12:02:39 AM1/4/13
to perlchina
 
大家好,请教个问题
 
如何将行中的前缀变为后缀。
 
例如将 hello (say   perlchina.system_123china  db),
hello (say system_123china.perlchina db),
 
 

lihq
 

Mc Cheung

unread,
Jan 4, 2013, 12:40:11 AM1/4/13
to perl...@googlegroups.com

my $line= "hello (say perlchina.system_123china db)";
$line =~ s/(\w+)\.(\w+)/$2.$1/;



在 2013年1月4日下午1:02,lihq <li...@live.cn>写道:
hello (say   perlchina.system_123china  db),

Anthony WU

unread,
Jan 4, 2013, 6:40:04 AM1/4/13
to perl...@googlegroups.com
Ҫ�����@������
��� ${xxx} ֻ���{�� ȫ��׃��

����
$a = "123";
{
my $a = "456";
print $a, $/; #456
print ${'a'}, $/; #123
print eval '$a', $/; #456
}


-------- Original Message --------
Subject: Re: [PerlChina] �󲿷�����²���ʹ�� $ �ͺ��ˣ�my var = "a
var"; �Ƿ��������ı������������
From: truncatei <trun...@gmail.com>
To: perl...@googlegroups.com
Date: 4/1/2013 12:26
> $var ${var} ��һ���
> Ҫ��var�Ļ������ó��� perldoc constant
>
> ���������ɱ� :D
>
>
> 2012/12/30 ������ <rungum...@gmail.com>:
>> Perl����Ҫ���� $ ��
>>
>> �Ƿ���������������ԣ�
>>
>> my var = "a var";
>>
>> Ȼ�� $var == ${var} == var �ء�
>>
>> --
>> ���յ����ʼ�����Ϊ������ Google ������̳�ġ�PerlChina Mongers �����顱��̳��
>> Ҫ�������ϲ鿴�����ۣ������ https://groups.google.com/d/msg/perlchina/-/cZ9jWooNjTQJ��
>> Ҫ���������̳�����뷢�͵����ʼ��� perl...@googlegroups.com��
>> Ҫȡ���Ĵ�������̳���뷢�͵����ʼ��� perlchina+...@googlegroups.com��
>> ���и�����⣬��ͨ�� http://groups.google.com/group/perlchina?hl=zh-CN ���ʴ�������̳��
>
>

chenlin rao

unread,
Jan 4, 2013, 9:09:06 AM1/4/13
to perl...@googlegroups.com
楼上说的没看懂。感觉print ${'a'}的结果应该是不存在吧


在 2013年1月4日下午7:40,Anthony WU <anthon...@gmail.com>写道:
要留意這個寫法
因為 ${xxx} 只能調用 全域變量

例子

$a = "123";
{
my $a = "456";
print $a, $/; #456
print ${'a'}, $/; #123
print eval '$a', $/; #456
}


-------- Original Message --------
Subject: Re: [PerlChina] 大部分情况下不用使用 $ 就好了,my var = "a
var"; 是否存在这样的变量定义的语言
From: truncatei <trun...@gmail.com>
To: perl...@googlegroups.com
Date: 4/1/2013 12:26
> $var  ${var}  是一样的
> 要用var的话可以用常量 perldoc constant
>
> 不过常量不可变 :D
>
>
> 2012/12/30 方及道 <rungum...@gmail.com>:
>> Perl灵活,但要狂敲 $ 键。
>>
>> 是否有这样的语法的语言:
>>
>> my var = "a var";
>>
>> 然后 $var == ${var} == var 呢。
>>
>> --
>> 您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
>> 要在网络上查看此讨论,请访问 https://groups.google.com/d/msg/perlchina/-/cZ9jWooNjTQJ
>> 要向此网上论坛发帖,请发送电子邮件至 perl...@googlegroups.com
>> 要取消订阅此网上论坛,请发送电子邮件至 perlchina+...@googlegroups.com
>> 若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。
>
>

--

夏凯

unread,
Jan 4, 2013, 9:34:26 AM1/4/13
to perl...@googlegroups.com
On 2013年01月04日 19:40, Anthony WU wrote:
> 因為 ${xxx} 只能調用 全域變量
不是啊,${a}就是局部的,${'a'}才是全局的。

chenlin rao

unread,
Jan 4, 2013, 9:56:38 AM1/4/13
to perl...@googlegroups.com
额,是。之前我理解错了。
$ cat test.pl 
use 5.010;
our $str = "abc";
my $str = "123";
{
my $str = "def";
say ${str};
say ${'str'};
}
say ${str};
say ${'str'};
$ perl test.pl 
def
abc
123
abc
一直带着strict和warnings写perl,都不知道还有这么个情况



--
您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 perl...@googlegroups.com
要取消订阅此网上论坛,请发送电子邮件至 perlchina+unsubscribe@googlegroups.com

Anthony WU

unread,
Jan 4, 2013, 11:39:29 AM1/4/13
to perl...@googlegroups.com
������Č��ò�Ԕ��
������ ${'a'} �����{�� ȫ��׃��
${'a'} ����r $b = 'a'; ${$b};

����

$a = "123";
{
    my $a = "456";
    $b = 'a';
    print ${$b}, $/;
}


��Ȼ߀�� �Ŀ� <walk...@gmail.com> ���f�� ${a} �Č���������׃�ɶ���� { }
������һ��������
my $a = "123456";
my $b = "abcdefg";
my $c = "ABCDEFG";
print $a, $b, $c;

Ӳ����
my ${a} = "123456";
my ${b} = "abcdefg";
my ${c} = "ABCDEFG";
print ${a}, ${b}, ${c};

���܌���
my $a = "123456";
my $b = "abcdefg";
my $c = "ABCDEFG";
print ${$_} for (a..c);

-------- Original Message --------
Subject: Re: [PerlChina] �󲿷�����²���ʹ�� $ �ͺ��ˣ�my var = "a var"; �Ƿ��������ı������������
From: chenlin rao <rao.c...@gmail.com>
To: perl...@googlegroups.com
Date: 4/1/2013 22:09
¥��˵��û�������о�print ${'a'}�Ľ��Ӧ���Dz����ڰ�


�� 2013��1��4������7:40��Anthony WU <anthon...@gmail.com>д ����
Ҫ�����@������
��� ${xxx} ֻ���{�� ȫ��׃��

����
$a = "123";
{
my $a = "456";
print $a, $/; #456
print ${'a'}, $/; #123
print eval '$a', $/; #456
}


-------- Original Message --------
Subject: Re: [PerlChina] �󲿷�����²���ʹ�� $ �ͺ��ˣ�my var = "a
var"; �Ƿ��������ı������������
From: truncatei <trun...@gmail.com>
To: perl...@googlegroups.com
Date: 4/1/2013 12:26
> $var  ${var}  ��һ���
> Ҫ��var�Ļ������ó��� perldoc constant
>
> ���������ɱ� :D
>
>
> 2012/12/30 ������ <rungum...@gmail.com>:
>> Perl����Ҫ���� $ ��
>>
>> �Ƿ���������������ԣ�
>>
>> my var = "a var";
>>
>> Ȼ�� $var == ${var} == var �ء�
>>

Reply all
Reply to author
Forward
0 new messages