RegEx用于在冒号之间提取字符

时间:2019-05-21 11:14:58

标签: regex regex-negation regex-lookarounds regex-group regex-greedy

我试图在两个冒号之间提取文本,没有它们和空格,但是通过我的代码,我总是得到两个冒号。

句子是:xxxxxxx: hello world, my name is AAAA :description

现在,我需要:hello world, my name is AAAA

有了(\:[^:]*\:),我会得到:: hello world, my name is AAAA :

如何解决此问题?

1 个答案:

答案 0 :(得分:1)

您可以使用lookarounds断言左边的是什么,右边的是冒号。

对于匹配,您可以使用否定字符类[^:]*进行匹配,以匹配0+次而不是冒号。如果要匹配至少1个字符,可以将量词更改为+而不是*

(?<=:)[^:]*(?=:)

Regex demo