gpt4 book ai didi

java - 正则表达式检查字符串仅包含十六进制字符

转载 作者:IT老高 更新时间:2023-10-28 20:56:28 24 4
gpt4 key购买 nike

我以前从未使用过正则表达式,并且我发现它们对于处理字符串非常有用。我看到了一些 tutorials(例如),但我仍然无法理解如何对字符串中的十六进制字符进行简单的 Java 正则表达式检查。

用户将在文本框中输入如下内容:0123456789ABCDEF,我想知道输入是否正确,否则如果返回 false 时类似 XTYSPG456789ABCDEF

是否可以使用正则表达式来做到这一点,还是我误解了它们的工作原理?

最佳答案

是的,您可以使用正则表达式来做到这一点:

^[0-9A-F]+$

Explanation:

^            Start of line.[0-9A-F]     Character class: Any character in 0 to 9, or in A to F.+            Quantifier: One or more of the above.$            End of line.

To use this regular expression in Java you can for example call the matches method on a String:

boolean isHex = s.matches("[0-9A-F]+");

请注意,matches 只会找到完全匹配的内容,因此在这种情况下您不需要行首和行尾 anchor 。在线查看:ideone

您可能还希望同时允许大写和小写 A-F,在这种情况下,您可以使用以下正则表达式:

^[0-9A-Fa-f]+$

关于java - 正则表达式检查字符串仅包含十六进制字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5317320/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com