小编nmi*_*els的帖子

正则表达式:获取括号外的内容

我正在使用 PHP,我有这样的文字:

first [abc] middle [xyz] last
Run Code Online (Sandbox Code Playgroud)

我需要了解括号内外的内容。在 StackOverflow 中搜索,我找到了一个模式来获取里面的内容:

preg_match_all('/\[.*?\]/', $m, $s)
Run Code Online (Sandbox Code Playgroud)

现在我想知道获取外部内容的模式。

问候!

php regex preg-match-all

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

是否有必要为wxErlang小部件创建ID?

我一直在探索Erlang的wx模块和教程.我之前没有使用过wxwidgets,所以也许这就是它的完成方式,但这段代码对我来说真的很糟糕:

%% create widgets
    T1001 = wxTextCtrl:new(Panel, 1001,[]),
    ST2001 = wxStaticText:new(Panel, 2001,"Output Area", []),
    B101  = wxButton:new(Panel, 101, [{label, "&Countdown"}]),
    B102  = wxButton:new(Panel, ?wxID_EXIT, [{label, "E&xit"}]),
    wxFrame:show(Frame),
Run Code Online (Sandbox Code Playgroud)

人们是否真的必须在创建小部件时为其分配小部件ID?在窗口小部件ID之后命名指向窗口小部件的变量是否正常?

erlang wxwidgets wxerlang

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

当你移位到变量的末尾时会发生什么?

如果你有一些变量(在堆栈上),你左或右位移超过它的结束会发生什么?

byte x = 1;
x >> N;
Run Code Online (Sandbox Code Playgroud)

如果x是一个指向内存转换为字节的指针而你做同样的事情怎么办?

byte* x = obtain pointer from somewhere;
*x = 1;
*x >> N;
Run Code Online (Sandbox Code Playgroud)

c c++ bit-manipulation

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

打开 MP 如果 OpenMP:...else

问题:我有一些我自己和其他人编写的代码,我使用了这些代码并使用 mpi 和 openmp 取得了很好的结果(有助于我在 Blue Gene/Q 上运行它)。

我不喜欢的一件事是,现在我无法在没有 -openmp 指令的情况下编译代码,因为为了获得我需要的加速,我使用了缩减变量。例子:

!$OMP parallel do schedule(DYNAMIC, 4) reduction(min:min_val)
....
    min_val = some_expression(i)
....
!$OMP end parallel do
result = sqrt(min_val)
Run Code Online (Sandbox Code Playgroud)

我正在寻找类似的东西:

!$OMP if OMP:
!$OMP min_val = some_expression(i)
!$OMP else:
if ( min_val .gt. some_expression(i) ) min_val = some_expression(i)
!$OMP end else
Run Code Online (Sandbox Code Playgroud)

有人知道这样的事情吗?请注意,如果没有 -openmp,!$OMP 行将被忽略,代码会正常运行,并给出正确的、呃相同的答案。

谢谢,

(是的,它是 FORTRAN 代码,但它与 C 和 C++ 几乎相同)

fortran openmp fortran90

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

C++ vs C用于分布式计算

我即将开始一个科学计算的新项目,它将在一个使用8到32个CPU的计算机集群上运行.我将使用MPI来分配计算.最后一点是哪种语言更适合使用C或C++?我会做一些严肃的数字运算,我需要一个平滑且分布均匀的并行化.我没有使用MPI的经验,但我知道它比C++更适合C,即使使用了像boost :: MPI这样的库.考虑到性能至关重要,使用哪种语言更好?

注意:当然,可以在C++上编写C风格的代码,但毕竟不是C++.当我谈到C++时,我的意思是使用大量的OOP和泛型编程.

c c++ distributed-computing mpi

2
推荐指数
2
解决办法
2720
查看次数

签出mercurial存储库的子集

首先,我有一个非常大的cvs存储库,我正在尝试将事情转换为mercurial.cvs存储库由几个目录组成,有点像这个问题中的情况.但是,每个子目录都不是一个完整的独立项目.每个项目都使用整体的一个子集,但它们的交叉点不是空的.

这是一个澄清的例子:

/cvsroot
    .../core
    .../feature-1
    .../feature-2
Run Code Online (Sandbox Code Playgroud)

项目1使用核心和功能1; 项目2使用核心和功能-2.我不希望在项目2上工作的人在他们的工作副本中有feature-1目录,因为它实际上是一组大约30个目录和一个不可忽略的空间量.

有没有办法用mercurial轻松(或者,好吧)处理这个问题?我想过为交叉点使用一个单独的存储库,但这不是最理想的.这意味着要进行额外的拉动和额外的更新,并且可能会编写一堆脚本来管理它.

我的另一个选择是复制每个交叉点.这并不好,因为它可能导致公共代码分叉,因为不同的人在它的不同部分工作.

migration cvs mercurial

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

我应该在哪里放置我的静态文本文件才能成为OTPy?

我正在用牛仔建立一个服务器,我有一些我想要服务的静态HTML页面.是否有一个OTP友好的地方放这种东西?有没有一种既定的方法来告诉螺纹钢在哪里寻找这种东西?

erlang erlang-otp rebar cowboy

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

读取图像文件C++并将其放在套接字上

我正在尝试用C++开发一个小型的Web服务器,但是当我尝试读取一个图像文件并将其写入套接字缓冲区时,我遇到了问题.我发现一个用C编写的类似函数完美地运行,我无法理解为什么我的方法不起作用,当我通过浏览器连接到服务器并打开图像文件时我得到了这个输出.

"图像"http://127.0.0.1:7777/myimage.jpg"无法显示,因为它包含错误."

这是我的方法:

std::string
Client::getFileContent(const std::string& name)
{
    std::ifstream f;     f.open(name.c_str(), std::ios::binary);
    if( !f.is_open() )  {
        return (std::string(""));

    }  else  { 
        f.seekg(0, std::ios::end);
        unsigned int length = f.tellg(); 
        f.seekg(0, std::ios::beg);

        char* buffer = new char[length];    
        f.read(buffer, length);            

        f.close();

        return ( std::string(buffer) );
    }

}
Run Code Online (Sandbox Code Playgroud)

然后我将它写在套接字缓冲区中(使用nspr套接字):

void
Socket::send(const std::string& s)
{
    if(PR_Send(sock, s.c_str(), s.length(), 0, PR_INTERVAL_NO_WAIT) == -1)  {
        throw ( Exception::Exception(Exception::Exception::SOCKET_SEND) );
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我在网上找到的功能,我无法理解为什么这种功能完美而且我的工作不起作用Oo:

    while ( (ret = read(file_fd, buffer, BUFSIZE)) > 0 ) {
        (void)write(fd,buffer,ret);
Run Code Online (Sandbox Code Playgroud)

非常感谢你 :)

c++ sockets image nspr

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

如何摆脱关于我的 .hgtags 文件的“格式不正确”错误?

几周前,有人在合并 .hgtags 时不小心弄坏了他们的 l 密钥,我们开始收到有关如何 .hgtags 的消息.hgtags@eed03ad8bbe7, line 1: node 'll005a7e9815cb34a143f349469b6b3c27174af7f6' is not well formed

我去修复了标签文件,一切看起来都很笨拙,但是现在当人们克隆时,他们会收到该消息。有没有办法关闭它?我是否必须编辑历史记录并告诉公司中的每个人都删除他们所有的存储库并重新克隆?

mercurial

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

我如何计算这个程序在 Python 中执行了多少次?

    from itertools import permutations
    import random
    import pprint
    import timeit

    start_time = timeit.default_timer()
    count = 0
    def gird(board_size):

        print ("\n".join('# ' * inrange + 'Q ' + '# ' * (8-inrange-1)\

    for inrange in board_size) + "\n\n= = new board  \n")
    count+=1
    coloms  = range(8)
    for board_size in permutations(coloms):
        if 8 == len(set(board_size[inrange]+inrange for inrange in coloms)):
            if 8 == len(set(board_size[inrange]-inrange for inrange in coloms)):
                gird(board_size)


                elapsed = timeit.default_timer() - start_time
                print(elapsed)
                print(count)
Run Code Online (Sandbox Code Playgroud)

我想看看这段代码运行了多少次。我必须衡量搜索成本(迭代次数,直到达到最小值)和已解决问题的百分比。这是一个8皇后问题。

python

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