正则表达式用于提取冒号之间的字符
RegEx for extracting chars between colons
我正在尝试提取两个冒号之间的文本,没有它们和空格,但使用我的代码我总是得到两个冒号。
句子是:xxxxxxx: hello world, my name is AAAA :description
现在,我需要:hello world, my name is AAAA
使用 (\:[^:]*\:)
我得到:: hello world, my name is AAAA :
如何解决这个问题?
您可以使用 lookarounds 断言左边是冒号,右边是冒号。
对于匹配,您可以使用否定字符 class [^:]*
来匹配 0+ 次而不是冒号。如果你想匹配至少 1 个字符,你可以将量词更改为 +
而不是 *
(?<=:)[^:]*(?=:)
我正在尝试提取两个冒号之间的文本,没有它们和空格,但使用我的代码我总是得到两个冒号。
句子是:xxxxxxx: hello world, my name is AAAA :description
现在,我需要:hello world, my name is AAAA
使用 (\:[^:]*\:)
我得到:: hello world, my name is AAAA :
如何解决这个问题?
您可以使用 lookarounds 断言左边是冒号,右边是冒号。
对于匹配,您可以使用否定字符 class [^:]*
来匹配 0+ 次而不是冒号。如果你想匹配至少 1 个字符,你可以将量词更改为 +
而不是 *
(?<=:)[^:]*(?=:)