问题列表 - 第17211页

正则表达式,编写玩具编译器,解析,评论卸妆

我正在努力完成这本书:http: //www1.idc.ac.il/tecs/

我目前正处于一个部分,其中excersize是为非常简单的java语言创建编译器.这本书总是说明需要什么,但不知道如何(这是一件好事).我还应该提一下,它讨论了yacc和lex,并特别说要为了自己学习而避免使用本书中的项目.

我正在使用chaper 10并开始编写tokenizer.

1)任何人都可以给我一些一般的建议 - 正则表达式是标记源文件的最佳方法吗?

2)我想在解析之前从源文件中删除注释 - 这并不难,但是大多数编译器会告诉你行发生错误,如果我只是删除注释这会弄乱行数,是否有任何简单的保留策略线路数量仍然删除垃圾?

提前致谢!

regex compiler-construction parsing

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

从另一个表复制权限

是否可以将用户权限从 PostgreSQL 数据库中的一个表复制到另一个表?是否只是将pg_class.relacl目标表的列值更新为源表的值,如下所示:

UPDATE pg_class
SET relacl=(SELECT relacl FROM pg_class WHERE relname='source_table')
WHERE relname='target_table';
Run Code Online (Sandbox Code Playgroud)

这似乎有效,但是我是否错过了使用此方法可能需要完成的任何其他操作或其他“陷阱”?

postgresql database-permissions

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

PostgreSQL:如何优化我的数据库以存储和查询大图

我在1.83 GHz Intel Core Duo Mac Mini上运行PostgreSQL 8.3,内存为1GB,Mac OS X 10.5.8.我在PostgreSQL数据库中存储了一个巨大的图形.它由160万个节点和3000万个边缘组成.我的数据库架构如下:

CREATE TABLE nodes (id INTEGER PRIMARY KEY,title VARCHAR(256));
CREATE TABLE edges (id INTEGER,link INTEGER,PRIMARY KEY (id,link));
CREATE INDEX id_idx ON edges (id);
CREATE INDEX link_idx ON edges (link);
Run Code Online (Sandbox Code Playgroud)

表边缘中的数据看起来像

id link 
1  234
1  88865
1  6
2  365
2  12
...
Run Code Online (Sandbox Code Playgroud)

因此它为每个节点存储id x到id y的传出链接.

搜索所有传出链接的时间是可以的:

=# explain analyze select link from edges where id=4620;
                           QUERY PLAN                                                        
    ---------------------------------------------------------------------------------
     Index Scan using id_idx on edges  (cost=0.00..101.61 rows=3067 width=4) (actual time=135.507..157.982 …
Run Code Online (Sandbox Code Playgroud)

postgresql optimization graph

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

int数组到字符串

在C#中,我有一个int数组,只包含数字.我想将此数组转换为字符串.

数组示例:

int[] arr = {0,1,2,3,0,1};
Run Code Online (Sandbox Code Playgroud)

如何将其转换为格式为的字符串:"012301"

c# arrays string

55
推荐指数
7
解决办法
9万
查看次数

SQL Server会话状态,Web场和IIS配置

所以我使用SQL Server 2008和临时数据库设置SQL Server会话状态,今天我决定只查看表中的数据,以便在ASPStateTempApplications表中找到它:

AppId AppName
538231025/lm/w3svc/1/root
611758131/lm/w3svc/3/root
802488340/lm/w3svc/4/root
-940085065/lm/w3svc/4/root/webapp
685293685/lm/w3svc/5/root
1210055478/lm/w3svc/5/root/webapp

我们有2个负载平衡的Web服务器.

当我查看两个服务器的Web应用程序的ID时,我看到web1的app1的id为4,web2的app1的id为5.同样的事情发生在另一个应用程序中.web1的app2的id为1,web2的app2的id为3.

我的常识告诉我,由于会话ID使用appid,因此Web服务器不会共享会话.我对么?如果是这样,为什么这个小细节在文档中不那么明显?我应该在两个Web服务器上使ID匹配吗?

sql-server asp.net iis-7 sql-session-state

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

Java Collections.sort - 帮我删除未经检查的警告

List<Question> questions = new ArrayList<Question>();
questions.addAll(getAllQuestions()); //returns a set of Questions
Collections.sort(questions, new BeanComparator("questionId")); //org.apache.commons.beanutils.BeanComparator
Run Code Online (Sandbox Code Playgroud)

在Java 1.5下,上述工作正常,只是'new BeanComparator("questionId")'生成一个未经检查的警告.我不喜欢警告.有没有办法可以为BeanComparator提供一个类型,还是我必须使用@SuppressWarnings("unchecked")

java generics comparator apache-commons-beanutils

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

什么是这些^ M一直出现在我的emacs文件中?

所以我认为它可能与textmate有关,但是我们在一个小团队中工作,并且在git中存在几个相同文件的完整文件冲突的问题,因为一个分支的每一行都附加了^ M.

这个神秘的^M角色应该做什么,它可能来自哪里?

我们的开发人员在Windows/Mac上使用emacs,在Mac上使用TextMate,在Mac上使用coda,偶尔使用wp-admin文本编辑器.

任何人都有这个问题源于其中一个?

git emacs newline

143
推荐指数
9
解决办法
9万
查看次数

MySQL:如何获取count> 1的记录?

我有一个这样的SQL:

SELECT *, count(*) as cc 
FROM manytomany 
GROUP BY aid, bid
ORDER BY cc DESC
Run Code Online (Sandbox Code Playgroud)

返回带有计数#的所有记录.

但是,如果我只想获得数> 1的那些,我该怎么办?

mysql select count

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

删除了本地主分支中的文件,如何从远程恢复?

我在本地主分支中错误地删除了default.aspx.cs文件.

如何从远程存储库主服务器获取此文件?

git

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

继承场景中的C++交换问题

我想将交换功能添加到两个现有的C++类中.一个类继承自另一个类.我希望每个类的实例只能与同一个类的实例交换.为了使它成为半混凝土,说我有Foo和Bar课程.Bar继承自Foo.我定义了Foo :: swap(Foo&)和Bar :: swap(Bar&).Bar :: swap委托给Foo :: swap.我希望Foo :: swap只能在Foo实例上工作而Bar :: swap只能在Bar实例上工作:我无法弄清楚如何强制执行此要求.

这是给我带来麻烦的一个例子:

#include <algorithm>
#include <iostream>

struct Foo {
    int x;
    Foo(int x) : x(x) {};

    virtual void swap(Foo &other) {
        std::cout << __PRETTY_FUNCTION__ << std::endl;
        std::swap(this->x, other.x);
    };
};

struct Bar : public Foo {
    int y;
    Bar(int x, int y) : Foo(x), y(y) {};

    virtual void swap(Bar &other) {
        std::cout << __PRETTY_FUNCTION__ << " ";
        Foo::swap(other);
        std::swap(this->y, other.y);
    };
};

void display(Foo &f1, Foo &f2, Bar …
Run Code Online (Sandbox Code Playgroud)

c++ swap boost

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