Regex至少包含一个大写字母,且NOT至少包含一个下划线。

问题描述 投票:0回答:1

我需要一个至少包含一个大写字母且不包含任何下划线的regex,我目前的尝试是。

(?=.*[A-Z_])

我试过像..: example-chocolate-easter-egg-170g_349-85428671-ACCESSIBLEEASTEREGG ,因为这个字符串包含 _ 而且至少有一个大写字母,所以应该是false。 但是我上面的regex还是给了true......应该是false......。

理想的情况是.., example-chocolate-easter-egg-170g349-85428671-ACCESSIBLEEASTEREGG 这是对的,因为它不包含 _ 含有至少一个大写字母。

而这个也应该是假的,因为它没有大写字母。-chocolate-easter-egg-170g349-85428671-accessibleeasteregg

有什么建议吗?Regex代码的例子将是非常有用的Thanks

regex string match dispatcher regular-language
1个回答
1
投票

使用

^(?=.*[A-Z])(?!.*_).+

请看 证明.

匹配一个包含大写字母的字符串--。(?=.*[A-Z])不含下划线 (?!.*_),并且不是空的- .+. 移除 .+ 或使用 .* 以支持空输入。

© www.soinside.com 2019 - 2024. All rights reserved.