2014-02-20 49 views
0

如何写一个正则表达式来匹配大写字母的所有单词,但不匹配“a.BackGround = 1”中的BackGround。如何写一个正则表达式来捕获大写字母除外的所有单词

例如,

我有FireFox和Safari。我设置a.BackGround = 1

在上面的句子,我想匹配火狐Safari浏览器,但不背景

+0

不符合'“a.BackGround = 1'的标准是什么? – Toto

+0

因为我想保留代码片段。 – smwikipedia

+0

在您的示例中,为什么不匹配'I'和'And'? – Toto

回答

2

这是不够的:

(?:^|\s)([A-Z]\S*) 

这个词是在组1

+0

很好的答案我有点晚,但不错的工作 – Amitesh

+0

如果你想在一个单词中选择3个以上的字母表,那么你可以使用这个,如果你想(?:^ | \ s)[ AZ] \ w {3,}在这个I&And中没有选择with a.BackGround = 1 – Amitesh

+0

\ S也会选择一个“。”字符。根据问题,任何类似于代码的东西(例如“ A.Background“)不应该被匹配,用\ w代替\ S应该做的诀窍 –

1

我不知道该怎么好,这将适用于其他情况,但到目前为止这一切都是你的信息给我们。

这会自己承担,没有必要捕捉组匹配的话,除非你选择使用它们:

(?<=\s|^)[A-Z]\w*

如果匹配比较复杂,或适用于超过只是您给我们的示例文本,请让我知道。

相关问题