小编dje*_*lin的帖子

在sed中捕获组

我有很多行的形式

ko04062 ko:CXCR3
ko04062 ko:CX3CR1
ko04062 ko:CCL3
ko04062 ko:CCL5
ko04080 ko:GZMA
Run Code Online (Sandbox Code Playgroud)

并且非常希望摆脱右侧列的ko:位.我正在尝试使用sed,如下所示:

echo "ko05414 ko:ITGA4" | sed 's/\(^ko\d{5}\)\tko:\(.*$\)/\1\2/'
Run Code Online (Sandbox Code Playgroud)

它只是输出我回声的原始字符串.我是命令行脚本,sed,管道等新手,所以如果/当我做一些非常愚蠢的事情时,请不要太生气.

令我困惑的主要事情是,如果我将该\1\2位反转\2\1或仅使用一个组,则会发生同样的事情.我想,这意味着我遗漏了一些关于将echo输出管道输入到sed的机制,或者我的正则表达式错误或者我使用的是sed错误或者sed没有打印替换的结果.

任何帮助将不胜感激!

command-line sed

23
推荐指数
3
解决办法
4万
查看次数

Java类名称是复数的好习惯吗?

拥有类名为ExtractionUtils.的java类名称是不错的.在命名约定中我没有找到有关java类的复数名称的任何内容.
我在其中一个项目中看过这样的课程.

java class naming-conventions

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

是否有关于Scala 2.10反射API的教程?

有没有一个好地方可以获得Scala 2.10反射API的全面教程?我看到过去两年里写的很多博客文章,但这些帖子的许多细节已经过时了.

现在2.10是公开的,是否有任何文件可以指导我如何反思?

reflection scala scala-2.10

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

Angular中"href"和"ng-href"的区别

我已经使用了两者href并且ng-href我看不出它们之间的区别.

为什么Angular具有该ng-href属性,何时应该使用它?

angularjs

21
推荐指数
2
解决办法
4万
查看次数

如何捕获并重新抛出MySQL中的所有错误

我似乎无法找到任何地方如何捕获并重新抛出过程中可能发生的任何错误或警告.

我想要的是执行以下操作的语法:

create procedure myProcedure()
  begin

      declare exit handler for ANYTHING_WRONG_THAT_CAN_BE_CAUGHT_WARNINGS_INCLUDED
      begin
          rollback;
          RE_THROW THE_THING_THAT_WAS_CAUGHT;
      end;

      start transaction;
         -- do some stuff
      commit;
  end; //
Run Code Online (Sandbox Code Playgroud)

原因是我想强制对错误或警告进行回滚,而是将其留给客户端来决定如何处理特定错误.

全部区域是我不知道放什么的部分.

谢谢你的帮助!

编辑-------

我已经知道我不可能做我所问的:'(.

相反,对于出错的任何内容我都会遇到一个错误并使用以下代码:

declare exit handler for sqlwarning, sqlexception begin
    rollback;
    call error();
end;
Run Code Online (Sandbox Code Playgroud)

(error()不存在)

mysql stored-procedures handler

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

正确地在while循环中使用BufferedReader.readLine()

所以我在将一个文本文件读入我的程序时遇到了问题.这是代码:

     try{
        InputStream fis=new FileInputStream(targetsFile);
        BufferedReader br=new BufferedReader(new InputStreamReader(fis));

        //while(br.readLine()!=null){
        for(int i=0;i<100;i++){
            String[] words=br.readLine().split(" ");
            int targetX=Integer.parseInt(words[0]);
            int targetY=Integer.parseInt(words[1]);
            int targetW=Integer.parseInt(words[2]);
            int targetH=Integer.parseInt(words[3]);
            int targetHits=Integer.parseInt(words[4]);
            Target a=new Target(targetX, targetY, targetW, targetH, targetHits);
            targets.add(a);
        }
        br.close();
    }
    catch(Exception e){
        System.err.println("Error: Target File Cannot Be Read");
    }
Run Code Online (Sandbox Code Playgroud)

我正在读取的文件是100行参数.如果我使用for循环它完美地工作.如果我使用while语句(for循环上面注释掉的那个),它会在50处停止.用户可能会运行带有任意行数的文件的程序,因此我当前的for循环实现赢了工作.

为什么线路while(br.readLine()!=null)停在50?我检查了文本文件,没有任何东西可以挂起来.

当我使用while循环时,我没有从try-catch中得到任何错误,所以我很难过.有人有主意吗?

java bufferedreader

19
推荐指数
5
解决办法
13万
查看次数

使用成员函数作为构造函数未定义行为的参数?

#include <cstdio>

class A
{
public:
    A(int){puts("3");};

    int foo(){puts("4");return 10;}
};

int main()
{
    A a(a.foo());
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出4和3.

它在调用构造函数之前调用成员函数.标准是否定义了行为?

c++ undefined-behavior

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

ThreadPoolExecutor具有无限制队列而不创建新线程

ThreadPoolExecutor无法创建新线程.事实上,我写了一个有点hacky LinkedBlockingQueue,它将接受任何任务(即它是无限制的)但是调用一个额外的处理程序 - 在我的应用程序中喷出警告跟踪池后面 - 这给了我非常明确的信息,TPE拒绝创建新线程,即使队列中有数千个条目.我的构造函数如下:

private final ExecutorService s3UploadPool = 
new ThreadPoolExecutor(1, 40, 1, TimeUnit.HOURS, unboundedLoggingQueue);
Run Code Online (Sandbox Code Playgroud)

为什么不创建新线程?

java multithreading threadpool threadpoolexecutor

18
推荐指数
3
解决办法
9717
查看次数

Maven部署jar,依赖于repo

我可以jar在我的pom.xml运行中使用以下内容部署一个mvn deploy:

    <distributionManagement>
    <repository>
        <id>releases</id>
        <url>http://${host}:8081/nexus/content/repositories/releases</url>
    </repository>
    <snapshotRepository>
        <id>snapshots</id>
        <name>Internal Snapshots</name>
        <url>http://${host}:8081/nexus/content/repositories/snapshots</url>
    </snapshotRepository>
</distributionManagement>
Run Code Online (Sandbox Code Playgroud)

我可以jar-with-dependencies使用以下代码构建可执行文件:

        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
                <execution>
                    <id>create-executable-jar</id>
                    <phase>deploy</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                    <configuration>
                        <descriptorRefs>
                            <descriptorRef>jar-with-dependencies</descriptorRef>
                        </descriptorRefs>
                        <archive>
                            <manifest>
                                <mainClass>my.company.app.Main</mainClass>
                            </manifest>
                        </archive>
                    </configuration>
                </execution>
            </executions>
        </plugin>
Run Code Online (Sandbox Code Playgroud)

问题是我不知道如何将这些拼接在一起以将可执行文件部署jar到我的Maven仓库.我真的不知道这是通过新插件还是通过向现有程序集插件添加目标或其他步骤来实现的.

java deployment maven

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

将正确性约束直接编码到Haskell类型系统中?

在阅读matt写的文章时,我看到了以下的意见.

经验丰富的程序员擅长将正确性约束直接编码到Haskell类型系统中

有人可以解释这句话的意思或提供一个简短的例子吗?

haskell

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