相关疑难解决方法(0)

如何在Java中将CamelCase转换为人类可读的名称?

我想编写一个将CamelCase转换为人类可读名称的方法.

这是测试用例:

public void testSplitCamelCase() {
    assertEquals("lowercase", splitCamelCase("lowercase"));
    assertEquals("Class", splitCamelCase("Class"));
    assertEquals("My Class", splitCamelCase("MyClass"));
    assertEquals("HTML", splitCamelCase("HTML"));
    assertEquals("PDF Loader", splitCamelCase("PDFLoader"));
    assertEquals("A String", splitCamelCase("AString"));
    assertEquals("Simple XML Parser", splitCamelCase("SimpleXMLParser"));
    assertEquals("GL 11 Version", splitCamelCase("GL11Version"));
}
Run Code Online (Sandbox Code Playgroud)

java regex string camelcasing humanize

149
推荐指数
5
解决办法
6万
查看次数

如何使用某些分隔符拆分String但不在Java中删除该分隔符?

我在分裂方面遇到了问题String.

我想String用一些分隔符拆分一个但不丢失该分隔符.

当我们somestring.split(String separator)在Java中使用方法时,它会拆分String但从中删除分隔符部分String.我不希望这种情况发生.

我想要如下结果:

String string1="Ram-sita-laxman";
String seperator="-";
string1.split(seperator);
Run Code Online (Sandbox Code Playgroud)

输出:

[Ram, sita, laxman]
Run Code Online (Sandbox Code Playgroud)

但我希望结果如下所示:

[Ram, -sita, -laxman]
Run Code Online (Sandbox Code Playgroud)

有没有办法获得这样的输出?

java regex string split

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

有没有办法用String.split()拆分字符串并包含分隔符?

我正在尝试将包含所有非字母数字字符的字符串拆分为分隔符,但Java的String.split()方法会丢弃结果数组中的分隔符字符.有没有办法像"\ W"正则表达式模式那样分割字符串,但保留分隔符?

java regex string split

42
推荐指数
0
解决办法
3万
查看次数

Java分裂正在吃我的角色

我有这样的字符串String str = "la$le\\$li$lo".

我想拆分它以获得以下输出"la","le\\$li","lo".\ $是一个$转义所以它应该留在输出中.

但是,当我做 str.split("[^\\\\]\\$")ÿ得到"l","le\\$l","lo".

从我得到的我的正则表达式匹配$和i $然后删除.知道如何让我的角色回来吗?

谢谢

java regex string split

16
推荐指数
1
解决办法
4928
查看次数

如何使用PDFbox创建固定宽度的段落?

我可以像这样插入简单的文字:

document = new PDDocument();
page = new PDPage(PDPage.PAGE_SIZE_A4);
document.addPage(page);
PDPageContentStream content = new PDPageContentStream(document, page);
content.beginText();
content.moveTextPositionByAmount (10 , 10);
content.drawString ("test text");
content.endText();
content.close();
Run Code Online (Sandbox Code Playgroud)

但是如何使用width属性创建类似于HTML的段落?

<p style="width:200px;">test text</p>
Run Code Online (Sandbox Code Playgroud)

html paragraph pdfbox

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

背后的反向引用

你能在后视镜中使用反向引用吗?

假设我想split在我身后的任何地方重复两次角色.

    String REGEX1 = "(?<=(.)\\1)"; // DOESN'T WORK!
    String REGEX2 = "(?<=(?=(.)\\1)..)"; // WORKS!

    System.out.println(java.util.Arrays.toString(
        "Bazooka killed the poor aardvark (yummy!)"
        .split(REGEX2)
    )); // prints "[Bazoo, ka kill, ed the poo, r aa, rdvark (yumm, y!)]"
Run Code Online (Sandbox Code Playgroud)

使用REGEX2(其中反向引用嵌套在lookbehind中的前瞻)可以工作,但REGEX1在运行时会出现此错误:

Look-behind group does not have an obvious maximum length near index 8
(?<=(.)\1)
        ^
Run Code Online (Sandbox Code Playgroud)

这个排序是有意义的,我想,因为在一般的反向引用可以捕捉任何长度的字符串(如果正则表达式编译器是有点聪明,但是,它可以判断\1(.)在这种情况下,因此具有有限的长度).

那么有没有办法在后视镜中使用反向引用?

如果没有,你可以使用这个嵌套的前瞻来解决它吗?还有其他常用技术吗?

java regex backreference lookbehind

11
推荐指数
1
解决办法
1861
查看次数

如何在保持空格的同时split()一个String

你如何分割一串单词并保留空格?

这是代码:

String words[] = s.split(" "); 
Run Code Online (Sandbox Code Playgroud)

字符串包含: hello world

代码运行后,单词[]包含: "hello" "" world

理想情况下,它不应该是中间的空字符串,但包含两个空格:words []应该是: "hello" " " " " world

我怎样才能得到这个结果?

java regex

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

Java Regex在分隔符和保持分隔符之间拆分字符串

我有一个看起来像这样的java字符串;

(fname:jon)(lname:doe)(guaranteer: Sam (W) Willis)(age:35)(addr:1 Turnpike Plaza)(favcolor:blue)
Run Code Online (Sandbox Code Playgroud)

我想从分隔符中拆分这个String (fname:jon)<here>(lname:doe).

我尝试通过正则表达式进行拆分,\)\(但它只是破坏了我的代码

arr = s.split("\\)\\(");
for (String a: arr) System.out.println(a);
Run Code Online (Sandbox Code Playgroud)

产量

(fname:jon
lname:doe
guaranteer: Sam (W) Willis
age:35
addr:1 Turnpike Plaza
favcolor:blue)
Run Code Online (Sandbox Code Playgroud)

我也看了这个问题:如何拆分字符串,还要保留分隔符?,但它没有帮助,因为在我的情况下,我想要)(均匀地保持分隔符和分割分隔符,即,第一个括号应该是第一个结果,第二个到第二个结果.

我使用的正则表达式是s.split("(?<=\\)\\()")它给出了输出:

(fname:jon)(
lname:doe)(
guaranteer: Sam (W) Willis)(
age:35)(
addr:1 Turnpike Plaza)(
favcolor:blue)
Run Code Online (Sandbox Code Playgroud)

这是我想要的输出:

(fname:jon)
(lname:doe)
(guaranteer: Sam (W) Willis)
(age:35)
(addr:1 Turnpike Plaza)
(favcolor:blue)
Run Code Online (Sandbox Code Playgroud)

java regex arrays string

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

如何分割字符串并在Kotlin的分割部分之间植入分隔符?

说我有一个字符串

"Hello! How do you do? Good day!"

我想分割它,我的分隔符是:?并且! 使用"split"函数,结果将是:

`[Hello, How do you do, Good day]`
Run Code Online (Sandbox Code Playgroud)

但是,我希望它是:

`[Hello, !, How do you do, ?, Good day, !]`
Run Code Online (Sandbox Code Playgroud)

split kotlin

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

如何在Java中拆分字符串但保留定界符?

我正在尝试重新创建不和谐的表情符号解析消息的方式。

例如,我希望消息Hello, :smile::hearth: world!拆分为以下数组:

["Hello, ", ":smile:", ":hearth:", " world!"]
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用以下代码拆分数组:

Arrays.toString(message.split("(:[A-Za-z]+:)"))
Run Code Online (Sandbox Code Playgroud)

但是,split方法会删除找到的定界符。因此最终结果如下所示:

["Hello", , , " world!"]
Run Code Online (Sandbox Code Playgroud)

java regex

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