有什么方法可以优化以下脚本以更快地运行?
foreach my $arg (@data){ #
@score=();
`program $arg $arg1 > $result`; #!!! $arg1 is a very large file with lots of data!!!
open(FH,$result);
while(<FH>){
chomp;
if($_ =~ /\d+.+\s+(\d+\.\d+|\d+\.|\.\d+).+/){ #here i'm looking for any number such as: 21.343 or 12 or 0.22 or -3.0
push(@score, $1);
}
}
close FH;
@sorted = sort{$a <=> $b} @score; #a sorted score is what i actually want
}
Run Code Online (Sandbox Code Playgroud) 其中一位工作人员将标签名称放在元素ID的所有CSS选择器前面.例如:
div#footer {
}
Run Code Online (Sandbox Code Playgroud)
这,而不仅仅是:
#footer {
}
Run Code Online (Sandbox Code Playgroud)
他的理由是,对大多数浏览器来说,这是一个更快速的查找,因为他们不需要检查id每种元素的属性 - 只是div元素.他还指出,这应与类(如完成div.header-label的<div class="header-label"...元素).
听起来合情合理,但这是真的吗?
我注意到Perl的split命令有一些奇怪的行为,特别是在我希望结果数组包含空字符串的情况下,但实际上并没有.
例如,如果我在字符串的结尾(或开头)有一个分隔符,则结果数组没有空字符串''作为最后一个(或第一个)元素.
例:
@s = split(/x/, 'axb')
Run Code Online (Sandbox Code Playgroud)
产生2个元素数组['a','b']
@s = split(/x/, 'axbx')
Run Code Online (Sandbox Code Playgroud)
生成相同的数组
@s = split(/x/, 'axbxxxx')
Run Code Online (Sandbox Code Playgroud)
生成相同的数组
但是当我在最后放置一些东西时,所有这些空字符串都会显示为元素:
@s = split(/x/, 'axbxxxxc')
Run Code Online (Sandbox Code Playgroud)
产生一个6元素数组['a','b','','','','c']
如果分隔符在开头,则行为类似.
我希望在分隔符之间,之前或之后的空文本总是在分割中生成元素.任何人都可以向我解释为什么分裂在Perl中表现得像这样?我只是在Python中尝试了相同的东西,它按预期工作.
注意:Perl v5.8
我希望以在程序初始化代码中只设置一次的方式控制全局变量(或全局范围变量),并在此之后锁定它们.
我使用UPPER_CASE_VARIABLES作为全局变量,但我想确定无论如何都不要更改变量.
我的hadoop作业在HDFS上生成大量文件,我想编写一个单独的线程,将这些文件从HDFS复制到S3.
任何人都可以指向任何处理它的Java API.
谢谢
我试图在Adaptive Server Anywhere数据库上执行SQL查询.这里是:
SELECT count(*) AS s
FROM (
SELECT column1, count(*) AS n
FROM table1
GROUP BY column1
HAVING n > 1
)
Run Code Online (Sandbox Code Playgroud)
在子查询中,我希望得到所有重复的行,而在外部查询中,我想要重复的行数.
但是数据库说我每次在FROM子句中使用子查询时都会出现语法错误.这不受支持吗?
我正在Powerbuilder中的交互式SQL中执行查询.我使用ODBC连接到我的数据库.
我有一个自动增量zerofill ID号的表.当我查询数据时,ID丢失其前导零(即"000529"返回为"529").有没有办法保留前导零,甚至在查询语句中生成它们?我知道我可以生成它们使用STRPAD早在PHP,但对于具体的项目我在我想检索数据,因为它是在数据库中.
我有一个包含文本和图像的HTML字符串,例如
<p>...</p>
<img src="..." />
<p>...</p>
Run Code Online (Sandbox Code Playgroud)
我需要获取第一个图像的src属性.图像可能会或可能不会在a之后出现,<p>并且可能存在多个图像,或者根本没有图像.
最初,我尝试将字符串附加到DOM并进行过滤.但是,如果我这样做,浏览器会请求所有外部资源.在我的情况下,这增加了许多不必要的开销.
我的初步方法:
var holder = $('<div></div>');
holder.html(content);
var src = holder.find('img:first').attr('src');
Run Code Online (Sandbox Code Playgroud)
如何在不附加HTML的情况下获取第一张图像的src?我需要使用正则表达式,还是有更好的方法?
解决方案需要基于javascript/jQuery - 我没有使用任何服务器端语言.
我的问题非常类似于:http://forum.jquery.com/topic/parsing-html-without-retrieving-external-resources
谢谢
我从Web服务解析一些JSON,这给了我一个NSDictionary,我使用这个字典来填充NSObject类型的valueEntity上的属性
[myObject setValuesForKeysWithDictionary:JSONDict];
Run Code Online (Sandbox Code Playgroud)
(myObject与JSON解析器中的字典具有相同的属性名称和类型)
name = name
count = count
startDate = startDate
etc..
Run Code Online (Sandbox Code Playgroud)
有没有办法走另一条路,我有一个NSDictionary,我希望"填充"来自我的NSObject子类的属性和它们的值.就像我在标题中建议的那样:
单程
MyObject *myObject = [[MyObject alloc] init];
[myObject setValuesForKeysWithDictionary:JSONDict];
Run Code Online (Sandbox Code Playgroud)
另一种方式
NSMutableDictionary *dict = [myObject makeDictionaryWithObjectProperties];
Run Code Online (Sandbox Code Playgroud)
这样做的原因是我有一个valueEntity,根据协议,我的视图都符合,但我也希望用值来填充NSManagedObject.所以我认为使用NSDictionary作为中间步骤我可以在我的NSManagedObject上做一个类别,它从我的对象子类NSObject上的值手动设置每个属性.
用字典我可以去:
[myManagedObject setValuesForKeysWithDictionary:dict];
Run Code Online (Sandbox Code Playgroud)
一旦我完成上述操作,我就无法将字典表示恢复出去了吗?
我在SQL Server数据库中有一个包含10多万条记录的大表.该表包含美国所有50个州的特定类型的数据.因此,如果我从这个表创建50个视图,每个状态一个,那么从我的应用程序进行查询的性能是否会得到改善?其他建议?
perl ×2
amazon-s3 ×1
attributes ×1
cocoa-touch ×1
css ×1
database ×1
hadoop ×1
hdfs ×1
javascript ×1
jquery ×1
mysql ×1
nsdictionary ×1
nsobject ×1
objective-c ×1
odbc ×1
optimization ×1
powerbuilder ×1
python ×1
rdbms ×1
sql ×1
sql-server ×1
sybase-asa ×1
zerofill ×1