Perl中的位操作
发布时间:2020-12-15 23:31:15 所属栏目:大数据 来源:网络整理
导读:我有一个属性(32位长),每个位负责特定的功能.我写的Perl脚本应该打开第4位,但保存其他位的先前定义. 我在我的程序中使用: Sub BitOperationOnAttr{my $a="";MyGetFunc( $a);$a |= 0x00000008;MySetFunc( $a);} ** MyGetFunc / MySetFunc我自己的函数知道读
我有一个属性(32位长),每个位负责特定的功能.我写的Perl脚本应该打开第4位,但保存其他位的先前定义.
我在我的程序中使用: Sub BitOperationOnAttr { my $a=""; MyGetFunc( $a); $a |= 0x00000008; MySetFunc( $a); } ** MyGetFunc / MySetFunc我自己的函数知道读取/修复值. 问题: >如果使用$a | = 0x00000008;是正确的 ? “属性:Somestring:value(8 long(0x8))” 解决方法
是的,这很好.
我假设你有一个像上面这样的字符串,并希望使用正则表达式来提取“0x8”.在这种情况下,像: if ($string =~ m/0x([0-9a-fA-F]+)/) { $value = hex($1); } else { # string didn't match } 应该管用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |