Skip to main content
 首页 » 编程设计

c#之两个正则表达式匹配,匹配之间有空格

2024年02月05日27虾米姐

我试图用这个正则表达式匹配一个字符串:

正则表达式:

[ ](\d{4}|\d{4}[A-Za-z]{3})[ ] 

注意:数字后可能有 3 个字符,这就是 [A-Za-z]{3} 在其中的原因。

这是我不想匹配的字符串:

281320Z 26015KT 9999 3333 FEW028 SCT033 BKN053 16/10 Q1007= 

所以在这种情况下它只会选择 9999 因为 match1 会保留一个空间。 在这种情况下:

281320Z 26015KT 9999 3333 4444 FEW028 SCT033 BKN053 16/10 Q1007= 

将选择 9999 和 4444。

我怎样才能让 9999、3333、4444 被选中?

请您参考如下方法:

你可以像这样使用正则表达式:

\b(\d{4})(?:\b|[A-Z]{3}) 

Working demo