【问题标题】:Regular expressions (regex) for string starting with three dots以三个点开头的字符串的正则表达式 (regex)
【发布时间】:2023-02-02 23:34:45
【问题描述】:

我在 java 脚本中有一个字符串数组,我需要找到以三个点开头的字符串。 然后我需要删除这些点和“?”之后的所有内容。

例子:

"...how to do this? - Th0be [22.2.2022]" -> "how to do this?"

对于第一部分,我尝试了 ^\. 正则表达式(参考 Regular expressions: Matching strings starting with dot (.)?),但这应该只适用于一个点,而且它无论如何都不起作用。

对于第二部分,我找出了 [^?]*$ 正则表达式。它看起来是正确的,但我把它放在这里只是为了确定。

我是正则表达式的初学者。 任何想法,主要是如何做第一部分?

【问题讨论】:

  • 不能用startsWith()吗?如果你真的想要的话,可以用 rexex 来完成,但我认为 startsWith 函数的可读性更好。

标签: javascript regex


【解决方案1】:

您可以使用^.{3} 来匹配 3 个点。

let s = "...how to do this? - Th0be [22.2.2022]";
console.log(s.replace(/^.{3}([^?]*?).*/, "$1"));

【讨论】:

    猜你喜欢
    • 2014-10-28
    • 2011-09-16
    • 2014-08-15
    • 2015-05-14
    • 1970-01-01
    • 2021-11-04
    • 2013-08-04
    • 1970-01-01
    • 2010-10-28
    相关资源
    最近更新 更多