V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
gaozhy
V2EX  ›  问与答

正则表达式 只能输入数字、小数和字母 应该怎么写

  •  
  •   gaozhy · 2022-06-10 15:13:25 +08:00 · 954 次点击
    这是一个创建于 678 天前的主题,其中的信息可能已经有所发展或是发生改变。
    满足规则:
    - 11.1
    - 11
    - "Abc"
    - "Abc11.0"
    - "Abc11.1d"

    不满足规则:
    - "Abc11.d" 11.d 不是数字
    9 条回复    2022-06-10 21:37:11 +08:00
    ink19
        1
    ink19  
       2022-06-10 15:14:25 +08:00
    11.也可以认为是数字吧
    gaozhy
        2
    gaozhy  
    OP
       2022-06-10 15:17:50 +08:00
    @ink19 11. 不满足规则 需要是数字或者小数出现
    longbow0
        3
    longbow0  
       2022-06-10 15:19:08 +08:00
    abc1.1.1abc 算不算?
    just1
        4
    just1  
       2022-06-10 15:27:31 +08:00
    ^(\d+(\.\d+)?|[a-zA-Z]+)+$
    superychen
        5
    superychen  
       2022-06-10 15:37:46 +08:00
    示例里带字母的情况下都加了双引号,双引号算不算在里面?
    darklights
        6
    darklights  
       2022-06-10 15:48:58 +08:00
    @just1 思路跟你差不多,但是无法排除 1.11.1x
    superychen
        7
    superychen  
       2022-06-10 15:49:20 +08:00
    试试这个

    ^\S[a-zA-Z]*(\d+(.\d+)?d?)?$
    just1
        8
    just1  
       2022-06-10 16:08:07 +08:00   ❤️ 1
    @darklights ^((\d+(\.\d+)?(?!\d))|[a-zA-Z])+$
    数字末尾加个否定就行了
    gaozhy
        9
    gaozhy  
    OP
       2022-06-10 21:37:11 +08:00
    @just1
    @superychen 谢谢各位老哥~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   993 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:13 · PVG 06:13 · LAX 15:13 · JFK 18:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.