使用Groovy从String中删除NEL换行符?

of1yzvn4  于 8个月前  发布在  其他
关注(0)|答案(1)|浏览(99)

我正试着删除从一个文件中得到的所有换行符。但是我不能删除NEL行终止符,我发现\R Linebreak匹配器Any Unicode linebreak序列,等价于:

  • [\u000D\u000A|[\u000A\u000B\u000C\u000D\u0085\u2028\u2029]

下面是我的代码,所以使用一个简单的字符串,包含一个NEL在结束时,匹配器无法找到断线,任何人有任何想法怎么做?

import java.util.regex.Matcher
import java.util.regex.Pattern

class LineBreakDeleter {

    static void main (String []args){

                String line="hello";
                Pattern pattern = Pattern.compile(/\\R/);
                Matcher matcher = pattern.matcher(line);
                if (matcher.find())
                {
                    System.out.println("Found");
                }
        }
}
nzrxty8p

nzrxty8p1#

这是因为你的正则表达式是错误的。
在slashy-string中,反斜杠失去了它在String中的特殊意义。所以/\\R/等于'\\\\R',所以你要搜索一个反斜杠,后面跟着一个大写的R。删除其中一个反斜杠或使字符串带有单引号或双引号,您应该找到匹配。

相关问题