1

我正在尝试匹配这样的字符串:

key:value

但不匹配这样的字符串:

"has: stuff"
("or: that")

到目前为止,我有一个看起来像这样的正则表达式:

^(.*?):

这与所有这些示例相匹配。我怎样才能防止这种情况?

4

3 回答 3

1

要查找您可能想要使用正则表达式^\w+(?=:)^(\w+):

于 2012-08-21T02:14:08.753 回答
1

这是一个简单的正则表达式模式:

^(\w+)\:(\w+)$

\w: 集合中的一个字符 [0-9a-zA-Z]

\w+: 一个或多个 \w 字符

^: 第一个之前没有其他工作人员 (\w+)

$: 第二次之后没有其他工作人员 (\w+)

于 2012-08-23T21:34:58.413 回答
0

在您的反例中,是什么因素使它们在本次比赛中“无效”?是不是开头的标点符号?冒号后面的空格?

听起来你应该只包含你想要的东西,而不是试图排除你不想要的东西。如果您的键/值对总是由字母数字键组成(即没有标点符号),那么您可以使用简单地查找它的正则表达式。

/^([[:alnum:]]+):/
于 2012-08-21T02:10:32.917 回答