首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Regex必须以字母或数字开头,字符串只能有字母、数字或斜杠,不能有双斜杠。

问Regex必须以字母或数字开头,字符串只能有字母、数字或斜杠,不能有双斜杠。
EN

Stack Overflow用户
提问于 2015-02-24 23:57:54
回答 2查看 25.8K关注 0票数 8

我正试着检查一些字符串。这是参数。

  1. 字符串必须以字母或数字开头。
  2. 字符串只能包含字母、数字或斜线。
  3. 字符串不能有双斜杠(例如:"api//go")

好弦:

代码语言:javascript
复制
go
go2/api/hello
go/api45

坏弦乐:

代码语言:javascript
复制
/go        (can't begin with a slash)
go//api    (can't have a double slash)
go/api%    (can't contain non number, letter or slash)

我一直在尝试使用RegExr.com,但没有用。我一直在尝试这样的表达:

代码语言:javascript
复制
^[^\/](([0-9A-Za-z])+(\/)?)+

但这不太管用。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-02-25 00:14:22

您可以尝试这样的方法(我希望您所使用的任何风味都具有前瞻性!):

代码语言:javascript
复制
^(?!.*\/\/)[A-Za-z0-9][A-Za-z0-9\/]*$

请参阅 Regex 101演示 以获得完整的描述和测试字符串.

票数 7
EN

Stack Overflow用户

发布于 2015-02-25 00:14:14

给你:

代码语言:javascript
复制
^[0-9a-z](\/?[0-9a-z])*\/?$

需要当前窗体中的/i (不区分大小写的修饰符)。这是相当简单的,不需要看头。

解释:

代码语言:javascript
复制
^         Starts with
[0-9a-z]  1 Alphanumeric character
(         Start a repeatable group
\/?       Optional /
[0-9a-z]  1 Alphanumeric character
)*        Repeat the group zero or more times
\/?       Allow for an ending slash
$         String must end
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28708711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档