这是一个代码,它在angularjs中呈现星级代码.在某些时候,我需要在整个系统中得到所有评级的平均值,而不是率:2,我将有2.4.在这种情况下,我很有兴趣提出完全填充的2颗星和仅填充了一半的星.如何更改我的代码以添加此功能?而且,最初我想不指定任何明星填充.这也需要修改,我不知道应该怎么做?
<div ng-app="app" ng-controller="RatingCtrl" class="container">
<h1>Angular Star Rating Directive</h1>
<div star-rating ng-model="rating1" max="10" on-rating-selected="rateFunction(rating)"></div>
<star-rating ng-model="rating2" readonly="isReadonly"></star-rating>
<label>
<input type="checkbox" ng-model="isReadonly" /> Is Readonly
</label>
<div><strong>Rating 1:</strong> {{rating1}}</div>
<div><strong>Rating 2:</strong> {{rating2}}</div>
</div>
Run Code Online (Sandbox Code Playgroud)
在我的指示中
angular.module("app", [])
.controller("RatingCtrl", function($scope) {
$scope.rating1 = 1;
$scope.rating2 = 2;
$scope.isReadonly = true;
$scope.rateFunction = function(rating) {
console.log("Rating selected: " + rating);
};
})
.directive("starRating", function() {
return {
restrict : "EA",
template : "<ul class='rating' ng-class='{readonly: readonly}'>" +
" <li ng-repeat='star in stars' ng-class='star' ng-click='toggle($index)'>" …Run Code Online (Sandbox Code Playgroud) 有一个csv文件,包括基于该分类的电话号码的前缀列表.这是prefixes.csv的一个例子.这个文件接近2000行.
3511891,PORTUGAL-MOBILE (VODAFONE)
3511693,PORTUGAL-MOBILE (OPTIMUS)
3511691,PORTUGAL-MOBILE (VODAFONE)
34,SPAIN-FIXED
3469400,SPAIN-MOBILE (MVNO)
3469310,SPAIN-MOBILE (MVNO)
3469279,SPAIN-MOBILE (MVNO)
3469278,SPAIN-MOBILE (MVNO)
3469277,SPAIN-MOBILE (MVNO)
3469276,SPAIN-MOBILE (MVNO)
34673,SPAIN-MOBILE (VODAFONE)
243820000006,CONGO DEMOCARTIC REPUBLIC-SPECIAL SERVICES
243820000005,CONGO DEMOCARTIC REPUBLIC-SPECIAL SERVICES
243820000004,CONGO DEMOCARTIC REPUBLIC-SPECIAL SERVICES
88213200361,EMSAT-SPECIAL SERVICES
67518497899,PAPUA NEW GUINEA-SPECIAL SERVICES
56751975883,CHILE-SPECIAL SERVICES
56751975334,CHILE-SPECIAL SERVICES
56731974707,CHILE-SPECIAL SERVICES
Run Code Online (Sandbox Code Playgroud)
另一方面,有一个巨大的日志文件,包括数千行.这是日志的格式:
2015-11-01T00:00:17.735616+00:00 x1ee energysrvpol[15690]: INFO consume_processor: user:<<"dbdiayhg">> callee_num:<<"34673809195">> sid:<<"A1003unjhjhvhgfgvhbghgujhj02">> credits:-0.5000000000000001 result:ok provider:ooioutisrt.ym.ms
Run Code Online (Sandbox Code Playgroud)
所以,我必须在之后提取电话号码callee_num,然后将其与所有前缀逐位进行比较,以便发现相关号码的国家代码是什么callee_num.在此示例中,电话号码是34673809195,因此提取此号码,转到prefixes.csv并逐行检查它是否合适.
1)first time '3' from 34673xxxx
2)then 4
3) then 6
4) then 7 …Run Code Online (Sandbox Code Playgroud) 这是我想要更新的一组示例:
>>> x = set()
>>> x.add(('A1760ulorenaf0821x151031175821564', 1, 0))
>>> x
set([('A1760ulorenaf0821x151031175821564', 1, 0)])
Run Code Online (Sandbox Code Playgroud)
我的预期结果是:
set([('A1760ulorenaf0821x151031175821564', 1, 1)])
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做?集合是最好的选择,还是让我使用其他数据结构?我认为更新方法set可以做到这一点.但是,我犯了错误,这不是一个好的解决方案,因为它不会将第一个参数视为关键并重复元素.
这是日志行的一个例子:我想找到出现在callee_num:<<"文本块之后直到下一个 >> 的数字。
2016-08-21T06:37:36.830627+00:00 cccc eservice[9999]: INFO con_pr: user:<<"conxa3">> callee_num:<<"+6182290000648">> sid:<<"xxxxxxxxx160821082523657">> credits:-2.5 result:ok provider:outqtm.ym.ms
2016-08-21T06:37:42.728469+00:00 cccc eservice[32499]: INFO con_end_procr: user:conxa3 callee_num:+6182290000648 sid:xxxxxxxxx160821082523657 duration:725 result:ok provider:outqtm.ym.ms
Run Code Online (Sandbox Code Playgroud)
使用的例外结果awk应仅+6182290000648来自第一行。
这是我尝试过但不起作用的方法:
awk -F 'callee_num:<<" |\"' '{print $2}' filename
Run Code Online (Sandbox Code Playgroud)
什么是正确的解决方案?(谢谢)
我正在尝试更改代码,以便使用批处理文件获取两天前的日期.在这个例子中,我今天可以约会
for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /format:list') do set datetime=%%I
set LogDateTime=%datetime:~0,8%_%datetime:~8,6%
Run Code Online (Sandbox Code Playgroud)
但是,我不知道如何修改代码以获取两天前的数据.我不是在寻找PowerShell,也不是任何其他解决方案.我们只能使用批次.