相关疑难解决方法(0)

我如何(优雅地)将字符串转换为字符串特定部分的标签?

我将在Windows窗体上的标签中输入许多字符串(我不会使用这些字符串).字符串将类似于以下内容:

"快速的棕色狐狸在猎犬身上跑了过来"

我想在标签中显示字符串,但是将TextBox精确地覆盖在缺少字母的位置.

将有300多个字符串,我正在寻找最简单,最优雅的方法.

如何为每个字符串准确地重新定位文本框?

编辑: MaskTextBox将无法正常工作,因为我需要多行支持.

.net c# vb.net winforms

20
推荐指数
3
解决办法
964
查看次数

如何在使用RegEx时保留分隔符?

我做了一个关于标点符号和正则表达式的问题,但这令人困惑.

我有这样的文字:

String text = "wor.d1, :word2. wo,rd3? word4!"; 
Run Code Online (Sandbox Code Playgroud)

我这样做:

String parts[] = text.split(" ");
Run Code Online (Sandbox Code Playgroud)

我有这个:

wor.d1, | :word2. | wor,d3? | word4!;
Run Code Online (Sandbox Code Playgroud)

有这个我需要做什么?(将符号保留在边界处,但仅限于我指定的:.,!?:,而不是全部).

wor,d1 | , | : | word2 | . | wor,d3 | ? | word4 | !
Run Code Online (Sandbox Code Playgroud)

UPDATE

我用这些正则表达式获得了一些好的结果,但它在一个单词开头的标点符号的所有分割之前给出了一个空的char.

有一种方法可以在一开始没有这个空的char?

这个正则表达式是好的还是有更简单的方法?

public static final String PUNCTUATION_SEPARATOR =
        "("
        + "("
        + "(?=^[\"'!?.,;:(){}\\[\\]]+)"
        + "|"
        + "(?<=^[\"'!?.,;:(){}\\[\\]]+)"
        + ")"
        + "|"
        + "("
        + "(?=[\"'!?.,;:(){}\\[\\]]+($|\n))"
        + "|"
        + "(?<=[\"'!?.,;:(){}\\[\\]]+($|\n))"
        + ")"
        + ")";
Run Code Online (Sandbox Code Playgroud)

java regex punctuation separator

7
推荐指数
1
解决办法
1045
查看次数

如何在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
查看次数

dart:使用正则表达式拆分字符串并包含分隔符

在 Dart 中,我想使用正则表达式拆分字符串,并在结果列表中包含匹配的分隔符。因此,使用分隔符.,我希望将字符串123.456.789拆分为[ 123, ., 456, ., 789 ].

在某些语言中,如 C#、JavaScript、Python 和 Perl,根据/sf/answers/1096790341/,这可以通过简单地在捕获括号中包含分隔符来完成。该行为似乎记录在https://ecma-international.org/ecma-262/9.0/#sec-regexp.prototype-@@split

但是,这在 Dart 中似乎不起作用:

print("123.456.789".split(new RegExp(r"(\.)")));

产生与没有括号完全相同的东西。有没有办法split()在 Dart 中像这样工作?否则我想它必须是一个allMatches()实现。

编辑:放入((?<=\.)|(?=\.))正则表达式显然可以完成单个分隔符的工作,具有后视和前瞻。我实际上会有一堆分隔符,我不确定这种方法的效率。有人可以建议是否可以吗?易读性肯定会降低:允许分隔符.and ;,是否需要 ((?<=\.)|(?=\.)|(?<=;)(?=;)) or ((?<=\.|;)|(?=\.|;)。测试

print("123.456.789;abc;.xyz.;ABC".split(new RegExp(r"((?<=\.|;)|(?=\.|;))")));

表明两者都有效。

regex dart

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

如何拆分字符串并保留分隔符?

我知道你看到很多像我这样的问题,但我希望我的有点不同.我正在翻译,我想将文本分成句子,但是当我编写这段代码时:

public static string[] GetSentences(string Text)
{
    if (Text.Contains(". ") || Text.Contains("? ") || Text.Contains("! "))
        return Text.Split(new string[] { ". ", "? ", "! " }, StringSplitOptions.RemoveEmptyEntries);
    else
        return new string[0];
}
Run Code Online (Sandbox Code Playgroud)

它删除了".","?","!".我想保留他们我怎么能这样做.


注意:我想用"."点和空格分隔,"?"问号和空格......

c# asp.net string split translation

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

标签 统计

regex ×3

c# ×2

java ×2

.net ×1

asp.net ×1

dart ×1

punctuation ×1

separator ×1

split ×1

string ×1

translation ×1

vb.net ×1

winforms ×1