问题列表 - 第31394页

在PHP中模拟ruby的inject()行为

这里的这个问题来看,我正在编写一个枚举包装器,以便有一些方法可以与lambdas一起使用,以在某种程度上模拟ruby在枚举中对块的使用.

class enum {
    public $arr;

    function __construct($array) {
        $this->arr = $array;
    }

    function each($lambda) {
        array_walk($this->arr, $lambda);
    }

    function find_all($lambda) {
        return array_filter($this->arr, $lambda);
    }

    function inject($lambda, $initial=null) { 
        if ($initial == null) { 
            $first = array_shift($this->arr); 
            $result = array_reduce($this->arr, $lambda, $first); 
            array_unshift($this->arr, $first); 

            return $result; 
        } else { 
            return array_reduce($this->arr, $lambda, $initial); 
        } 
    } 

}


$list = new enum(array(-1, 3, 4, 5, -7));
$list->each(function($a) { print $a . "\n";});

// in PHP you can also assign …
Run Code Online (Sandbox Code Playgroud)

php closures

3
推荐指数
1
解决办法
547
查看次数

从集合中删除重复的 byte[]

这可能是一个非常简单的问题。我只是想从集合中删除重复的 byte[] 。

由于默认行为是比较引用,因此我认为创建 IEqualityComparer 会起作用,但事实并非如此。

我尝试过使用 HashSet 和 LINQ 的 Distinct()。

示例代码:

using System;
using System.Collections.Generic;
using System.Linq;

namespace cstest
{
    class Program
    {
        static void Main(string[] args)
        {
            var l = new List<byte[]>();
            l.Add(new byte[] { 5, 6, 7 });
            l.Add(new byte[] { 5, 6, 7 });
            Console.WriteLine(l.Distinct(new ByteArrayEqualityComparer()).Count());
            Console.ReadKey();
        }
    }

    class ByteArrayEqualityComparer : IEqualityComparer<byte[]>
    {
        public bool Equals(byte[] x, byte[] y)
        {
            return x.SequenceEqual(y);
        }

        public int GetHashCode(byte[] obj)
        {
            return obj.GetHashCode();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

输出: …

c# distinct duplicates hashset iequalitycomparer

3
推荐指数
1
解决办法
2266
查看次数

用于匹配数字类型的通用约束

我正在尝试在数字类型上编写一个扩展方法,以便在我正在构建的流畅测试框架中使用.基本上,我想这样做:

public static ShouldBeGreaterThan<T>(this T actual, T expected, string message)
    where T : int || T: double || etc...
Run Code Online (Sandbox Code Playgroud)

只是where T : struct不这样做,因为这也将匹配stringbool,可能别的东西,我忘了.有什么我可以做的只匹配数字类型?(实现的具体类型><运营商,这样我就可以对它们进行比较.如果这意味着我匹配日期为好,它其实并不重要-扩展仍然会做我的期望.)

c# generics numeric

78
推荐指数
5
解决办法
4万
查看次数

Visual Studio ASP.NET/HTML重新格式化功能 - 它是否存在?

是否Visual Studio中有能力,还是有一个VS插件,这将重新ASP.NET和HTML标记(即执行漂亮的打印).具体而言,我希望它把所有的属性或属性按字母顺序为每个标签,可能有一些例外的是,用户可以指定,说在配置文件中.此外,根据用户的规范,每个属性或属性可以选择放在单独的行上.

例如,请考虑以下事项:

<asp:TextBox ID="txtPlanStart" runat="server" ToolTip="start date" Columns="8">
Run Code Online (Sandbox Code Playgroud)

重新格式化的版本将是:

<asp:TextBox ID="txtPlanStart" runat="server" 
     Columns="8"
     ToolTip="start date" />
Run Code Online (Sandbox Code Playgroud)

请注意,重新格式化的版本不是严格按字母顺序排列,也不是单独排列,因为ID和runat是第一位的.同样,重新格式化的例外可以由用户指定.

如果VS中没有集成此功能,是否还有其他实用程序?

html asp.net plugins pretty-print visual-studio

3
推荐指数
1
解决办法
685
查看次数

SQL中的转义字符

请原谅我,因为我是一个sql noob.我正在尝试使用以下内容进行插入,但是我对撇号有问题.我有很多要插入的记录,但很多都有同样的问题.有没有逃脱它们的方法?

INSERT INTO  [dbo].[tb_Chefs] ([ChefHotelID], [HotelID], [ChefID],   
     [Position],  [GroupID])  
VALUES(N'b809a86e-f7f2-45b2-a240-0049f51509d7' ,N'14481', N'624', 
     N'Chef d'atelier', N'331')
GO
Run Code Online (Sandbox Code Playgroud)

任何帮助非常感谢.

sql string sql-server-2005

3
推荐指数
1
解决办法
1514
查看次数

这个黑客是否符合标准?

这就像struct hack.它是否符合标准C?

 // error check omitted!

    typedef struct foo {
       void *data;
       char *comment;
       size_t num_foo;
    }foo;

    foo *new_Foo(size_t num, blah blah)
    {
        foo *f;
        f = malloc(num + sizeof(foo) + MAX_COMMENT_SIZE );
        f->data = f + 1;            // is this OK?
        f->comment = f + 1 + num;
        f->num_foo = num;
        ...
        return f;

}
Run Code Online (Sandbox Code Playgroud)

c

8
推荐指数
1
解决办法
385
查看次数

用django制作文字粗体

我必须在纯文本之间发送一些粗体文本并将其从视图发送到模板.我这样做:

我在变量中保存了一个像<b> TextPlaintext </ b>这样的字符串并将其返回给模板.不解释"<b>"标签.

如何在django视图中制作一些粗体文字?

python django

1
推荐指数
1
解决办法
4747
查看次数

如何从python脚本结果中删除u''?

我正在尝试使用python/scrapy编写解析脚本.如何从结果文件中的字符串中删除[]和u'?

现在我有这样的文字:

from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from scrapy.utils.markup import remove_tags
from googleparser.items import GoogleparserItem
import sys

class GoogleparserSpider(BaseSpider):
    name = "google.com"
    allowed_domains = ["google.com"]
    start_urls = [
        "http://www.google.com/search?q=this+is+first+test&num=20&hl=uk&start=0",
    "http://www.google.com/search?q=this+is+second+test&num=20&hl=uk&start=0"
    ]

    def parse(self, response):
       print "===START======================================================="
       hxs = HtmlXPathSelector(response)
       qqq = hxs.select('/html/head/title/text()').extract()
       print qqq
       print "---DATA--------------------------------------------------------"

       sites = hxs.select('/html/body/div[5]/div[3]/div/div/div/ol/li/h3')
       i = 1
       items = []
       for site in sites:
           try:
           item = GoogleparserItem()
           title1 = site.select('a').extract()
           title2=str(title1)
           title=remove_tags(title2)
           link=site.select('a/@href').extract()
               item['num'] = i  
           item['title'] = title
               item['link'] = …
Run Code Online (Sandbox Code Playgroud)

python utf-8 web-crawler scrapy

3
推荐指数
2
解决办法
1万
查看次数

rails - 根模型或应用程序模型

我只是环顾铁路,发现有一个应用程序控制器,但没有应用程序模型.

在rails中没有根模型吗?如果不是,你在哪里放置一个需要在每个模型中的代码.

谢谢,亚历克斯

model ruby-on-rails

5
推荐指数
1
解决办法
2633
查看次数

多个客户端如何同时连接到服务器上的一个端口,比如80?

我了解端口如何工作的基础知识.但是,我没有得到的是多个客户端如何同时连接到端口80.我知道每个客户端都有一个唯一的(用于他们的机器)端口.服务器是否从可用端口回复客户端,并简单地说明回复来自80?这是如何运作的?

connection port tcp client-server http

380
推荐指数
5
解决办法
29万
查看次数