gpt4 book ai didi

java - 不允许波浪号/控制台键的正则表达式

转载 作者:行者123 更新时间:2023-11-30 06:57:20 25 4
gpt4 key购买 nike

我有以下正则表达式

(^[a-zA-z]+([a-zA-Z\s-]*)[a-zA-z]+$)

它不允许除 (`) 控制台键之外的所有特殊字符。有人可以解释我在我的正则表达式中做错了什么或我如何删除它吗?

提前致谢。

最佳答案

不要使用[A-z],使用[a-zA-Z]:

^[a-zA-Z]+([a-zA-Z\s-]*)[a-zA-Z]+$

否则,[A-z] 类也会匹配其他一些非字母符号:

enter image description here

这是一个demo on regex101.com .

请注意:当为特定语言设置排序规则时,[A-z] 有时可用于匹配 POSIX 样式正则表达式中的所有字母。

[[ "ABCEDEF[]_abcdef"=~ ([A-z]+) ]] && echo "${BASH_REMATCH[1]}" 在 Cygwin 上使用 LC_COLLATE="en_US. UTF-8" 生成 ABCEDF。如果将 LC_COLLATE 设置为 C(在 Cygwin 上,通过 export 完成),它将给出预期的 ABCEDEF[]_abcdef.

关于java - 不允许波浪号/控制台键的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33539723/

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