perl 匹配, 没看懂?

hjjdebug 2013-01-22 11:03:01
my $str = 'hello, hello, hell ';
my $count = @{[$str =~ m/hell/g]};


匹配表达式可以返回标量上下文 为 1 或 没有
匹配表达式可以返回数组上下文
此处的$count 显然是获取数组的个数。
整个的意思是获取匹配的个数

但还有以下问题:

1. 方括号把匹配表达式括起来是什么意思 ?
2. 大括号把方括号括住又是什么意思 ?
3. @来修饰一个大括号又是什么意思 ?

thanks.
...全文
188 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bugs2k 2013-01-22
  • 打赏
  • 举报
回复
1、方括号创建一个匿名数组,以标量方式引用 2、@{将匿名数组的标量引用看做为一个数组 可以看做如下的简写:
my $str = 'hello, hello, hell ';
my $arr = [$str =~ m/hell/g];
my $count = @{$arr};
zjs100901 2013-01-22
  • 打赏
  • 举报
回复
牛啊,在什么地方看到的? 另一种简单的方法:
my $str = 'hello, hello, hell ';
my @array = $str =~ m/hell/g;
my $count = @array;
hjjdebug 2013-01-22
  • 打赏
  • 举报
回复
thanks!
hjjdebug 2013-01-22
  • 打赏
  • 举报
回复
to: bugs2k 1. 方括号创建一个匿名数组,可以理解,付给标量是对数组的引用。 第二条解释不是很清楚。跨度太大。 需要分开解释, 花括号括住一个引用是什么意思? @显然是一个数组, @ 修饰大括号? @ 能修饰方括号,小括号吗? 所以还需要详细解释。 thanks!
内容概要:SSD2828QN4是一款MIPI主桥接芯片,用于连接应用处理器与传统并行LCD接口及支持MIPI从属接口的LCD驱动器。该芯片支持最高每通道1Gbps的串行链路速度,最多可配置4个数据通道,显著减少了信号数量。它支持多种接口模式,包括RGB+SPI组合接口,适用于驱动智能或非智能显示面板,并能通过命令模式和视频模式传输数据。芯片内置时钟和复位模块、外部接口、协议控制单元(PCU)、包处理单元(PPU)、错误校正码/循环冗余校验(ECC/CRC)模块、长包和命令缓冲区、D-PHY控制器、模拟收发器以及内部锁相环(PLL),确保了高效的数据传输和系统稳定性。此外,文档详细描述了芯片的引脚分配、寄存器设置、操作模式、电源序列、时序特性等关键参数,为开发者提供了全面的技术指导。 适合人群:具备一定硬件设计基础,从事嵌入式系统开发、显示技术研究的研发人员。 使用场景及目标:①实现应用处理器与MIPI兼容显示屏之间的高速数据传输;②优化显示系统的功耗表现,减少电磁干扰(EMI);③通过灵活配置不同接口模式来适应各种显示设备的需求。 阅读建议:此文档面向具有一定电子工程背景的专业人士,建议读者结合实际项目需求深入理解各章节内容,特别是关于寄存器配置、时序要求等方面的具体说明。对于初次接触此类技术的开发者而言,建议先熟悉基本概念再逐步掌握高级功能的应用方法。

37,738

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧