相关疑难解决方法(0)

按新行拆分Java字符串

我正在尝试JTextArea使用正则表达式拆分文本以拆分字符串\n然而,这不起作用,我也试过\r\n|\r|n和许多其他正则表达式的组合.码:

public void insertUpdate(DocumentEvent e) {
    String split[], docStr = null;
    Document textAreaDoc = (Document)e.getDocument();

    try {
        docStr = textAreaDoc.getText(textAreaDoc.getStartPosition().getOffset(), textAreaDoc.getEndPosition().getOffset());
    } catch (BadLocationException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }

    split = docStr.split("\\n");
}
Run Code Online (Sandbox Code Playgroud)

java regex split newline

372
推荐指数
12
解决办法
48万
查看次数

Jenkins Groovy如何从@NonCPS方法调用方法而不结束管道

我需要在Jenkins管道中解析一些JSON并在循环中调用一些常规方法,但是脚本总是在第一次函数调用后退出.这该怎么做?

import groovy.json.JsonSlurper
import com.cloudbees.groovy.cps.NonCPS

@NonCPS
def myMethod(String json) {
    def jsonSlurper = new JsonSlurper()
    def jsonObject = jsonSlurper(json)
    jsonObject.each {
        obj ->
            switch(obj.name) {
                case "foo":
                    doAThing(obj)
                    break
                case "bar":
                    doAnotherThing(obj)
                    break
            }
    }
}
Run Code Online (Sandbox Code Playgroud)

在上面的例子中,即使使用json对象,例如:

[{
    "name": "foo"
}, {
    "name": "bar"
}]
Run Code Online (Sandbox Code Playgroud)

...管道总是在第一次迭代后退出.这可能是由于混合同步和异步功能.有没有办法做到这一点?

groovy jenkins cloudbees jenkins-workflow

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

使用多行迭代String

我得到了一些数据:

def data = "# some useless text\n"+
        "# even more\n"+
        "finally interesting text"
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到那个"有趣的部分"?所以基本上所有的行,不是以#开头.

java string groovy loops

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

标签 统计

groovy ×2

java ×2

cloudbees ×1

jenkins ×1

jenkins-workflow ×1

loops ×1

newline ×1

regex ×1

split ×1

string ×1