gpt4 book ai didi

java - 正则表达式允许单个下划线和连字符不在开头或结尾

转载 作者:行者123 更新时间:2023-12-02 01:19:35 26 4
gpt4 key购买 nike

我有一个正则表达式,允许字符串之间带有连字符或下划线。但我无法让它在开始或结束时都不允许。

这是我的正则表达式:

^(?!.*__.*)(?!.*--.*)[a-zA-Z0-9_\-]*$

这有效,除非它允许 -_在开始或结束时。不应该有。

其他要求:

  • __--字符串中的任何位置都不允许出现(但 _--_ 是)
  • 除了 _- ,仅允许使用字母数字字符

最佳答案

这个怎么样?

^[^_-].*[^_-]$

只有一个痛点:根本不允许使用 1 个字符长度的字符串。这可能会解决它:

^([^_-](.*[^_-])?)?$

以及未记录的字母数字字符要求:

^([a-zA-Z0-9]([a-zA-Z0-9_-]*[a-zA-Z0-9])?)?$

关于java - 正则表达式允许单个下划线和连字符不在开头或结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57953008/

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