如何编写正则表达式来仅匹配数字、字母和破折号?

2023-12-10

我需要一个只接受以下内容的表达式:

  • 数字
  • 普通字母(无特殊字符)
  • -

空格也是不允许的。

例子: 正则表达式应该匹配:
this-is-quite-alright

不应该匹配
this -is/not,soålright


您可以使用:

^[A-Za-z0-9-]*$

这匹配完全由大写/小写字母 (ASCII A-Z)、数字 (ASCII 0-9) 和破折号组成的字符串(可能为空)。

这匹配 (如 rubular.com 上所示):

this-is-quite-alright
and-a-1-and-a-2-and-3-4-5

yep---------this-is-also-okay

并拒绝:

this -is/not,soålright
hello world

解释:

  • ^ and $ are beginning and end of string anchors respectively
    • 如果您要在字符串中查找匹配项,则不需要锚点
  • [...] is a character class
    • a-z, A-Z, 0-9在字符类中定义范围
    • -作为类中的最后一个字符是字面破折号
  • *是零次或多次重复

正则表达式.info

  • Anchors, 字符类, 重复

变化

规格不清楚,但如果-仅用于分隔“单词”,即没有双破折号,没有尾部破折号,没有前面的破折号,那么模式更复杂(只是稍微复杂一点!)

  _"alpha"_    separating dash
 /         \  /
^[A-Za-z0-9]+(-[A-Za-z0-9]+)*$
 \__________/| \__________/|\
    "word"   |    "word"   | zero-or-more
             \_____________/
              group together

这会匹配至少包含一个“单词”的字符串,其中单词由一个或多个“alpha”组成,其中“alpha”由字母和数字组成。后面可以有更多“单词”,并且它们总是用破折号分隔。

这匹配 (如 rubular.com 上所示):

this-is-quite-alright
and-a-1-and-a-2-and-3-4-5

并拒绝:

--no-way
no-way--
no--way
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何编写正则表达式来仅匹配数字、字母和破折号? 的相关文章

  • 如何使用 Regex.Replace 从字符串中删除数字?

    我需要使用Regex Replace从字符串中删除所有数字和符号 输入示例 123 abcd33输出示例 abcd 请尝试以下操作 var output Regex Replace input d string Empty The d标识符
  • 使用正则表达式查找除一个字符串之外的所有字符串[重复]

    这个问题在这里已经有答案了 我想匹配除字符串之外的所有字符串 ABC 例子 A gt Match F gt Match AABC gt Match ABCC gt Match CBA gt Match ABC gt No match 我尝试
  • Flutter Web URL 路由不适用于真实域

    我正在尝试使用一个网址来获取参数并将该参数分配给网络文件内的变量 例如 我的域名是 example com 在这个网站中我需要用户的 ID 我想制作 example com id 123 并获取 123 id 并给出变量 123 值 在 f
  • 正则表达式从 img 标签获取 src 值

    我正在使用以下正则表达式来获取src第一个的值imgHTML 文档中的标签 string match src
  • 正则表达式提取大括号之间的文本

    我正在尝试提取 PHP 中花括号之间的文本 例如 欢迎 user first name 使用 site 版本 1 5 您的用户名 是 user username 您目前的声誉是 user reputation name 我用过 在某些情况下
  • 我应该在哪里对对象和字段进行 django 验证?

    我正在创建一个 Django 应用程序 它使用 Django Rest Framework 和普通的 django views 作为用户的入口点 我想对模型的独立字段以及整个对象进行验证 例如 字段 根据正则表达式函数输入的车牌是否正确 与
  • 服务器端文件验证在 Yii.2.0 中不起作用

    Is the FileValidatorYii2 中的类只支持客户端验证 我使用代码编写了文件上传系统 在模型中 public function rules return allAllowedFileType safe allAllowed
  • 用于替换前 5 个数字的正则表达式,无论它们之间有什么?

    我正在努力实现以下匹配 Input 123 45 6789 123456789 1234 正则表达式尝试输出 d 5 123 45 6789 123456789 1234 d 2 3 123 45 6789 123456789 1234 d
  • Apache 重写 - 获取 PHP 中的原始 URL

    我在 nginx 或 Apache 中重写了这个地址 http domain com hello 到像这样的脚本 http domain com test php ref hell 如何在 PHP 中访问这个重写的 URL 因为 如果我使用
  • 限制正则​​表达式中的字符长度

    有没有办法限制正则表达式 http en wikipedia org wiki Regular expression最多 100 个字符with正则表达式 size size So Look at me 行不通的 我想限制数量 只允许 1
  • 提取单花括号内的值

    我想要一个收藏 value 一个字符串使用正则表达式 例如 lorem ipsum field1 lorem ipsum field2 lorem ipsum field1 lorem ipsum field2 field3 我会得到 fi
  • Web 应用程序中的 PathLocationStrategy 与 HashLocationStrategy

    使用的优点和缺点是什么 PathLocationStrategy 默认的 HTML 5 PushState 样式 HashLocationStrategy 哈希 URL 样式 例如 使用哈希位置策略将阻止通过 ID 滚动到元素的功能 但某些
  • xpath+ 正则表达式:匹配文本

    我正在尝试编写一个 xpath 以便仅返回包含文本和数字的节点 我想使用正则表达式并希望这能起作用 td matches text d 谁能帮我理解我在这里做错了什么 tr td 1 td td 10 td td a td tr 你缺少量化
  • 所有语言中特殊字符的 Java 正则表达式

    在我的用户输入字段中 我想允许某些特殊字符 字母和数字的组合 我应该确保正则表达式模式在输入时允许此设置任何语言 基本上我构建的这个正则表达式也应该支持 unicode 表示 如何使用 Java 中的 Pattern 类来实现这一点 这里给
  • 如何使用 java.util.regex.* 执行部分匹配?

    我一直在使用 java util regex 类来实现 Java 中的正则表达式 到目前为止一切都很好 但今天我有一个不同的要求 例如 考虑模式为 aabb 现在 如果输入字符串是 aa 它肯定不匹配 但是如果我附加 bb 它仍然有可能变成
  • 列表中允许 div 吗? [复制]

    这个问题在这里已经有答案了 我知道DIV inside LI是不允许的 但我最近在许多 大 网站上看到了它 例如粉碎杂志 网页设计师墙 etc 我尝试验证网站 但它们有错误 但没有任何信息DIV in LI 那么我可以在里面使用它吗LI 我
  • Notepad++:: 通过正则表达式完全删除包含问号的行

    嗯 我想这就是我的标题 这对于我将要实现的目标来说是不言自明的 这是我当前的文本文件的示例 Diva was the winning song of the Eurovision Song Contest 1998 Who will win
  • R 获取子字符串和正则表达式?

    我有一组文件名字符串 我想提取 符号之后但文件扩展名之前的所有字符 例如 文件名之一是 HelloWorld you txt 我想返回字符串you 这是我的代码 hashPos grep name fixed TRUE dotPos len
  • Python - 用逗号分割,跳过括号内的内容

    我需要用逗号分隔字符串 但我对这种情况有一个问题 TEXT EXAMPLE THIS IS A EXAMPLE BUT NOT WORKS FOR ME SECOND THIRD 我想拆分并得到 var 0 TEXT EXAMPLE THI
  • Django NoReverseMatch

    我有以下设置 landing pages views py urls py In urls py当我尝试访问时 我有以下内容 competition from django conf urls defaults import from dj

随机推荐

  • git Push 原始头?

    我对 git repo 下的文件做了一些更改 我使用提交了文件git commit 然后我尝试使用git push origin master返回的Everything up to date I typed git push origin
  • dispatch_sync(dispatch_get_global_queue(xxx), task) 是同步还是异步

    正如Apple的文档所说 dispatch get global queue 是一个并发队列 而dispatch sync是串行的意思 那么任务是异步处理还是同步处理 您对队列是什么以及异步与同步的含义感到困惑 队列是可以运行块的实体 这些
  • 通过消除空值来合并 Apache Spark 中的行

    我有一个像下面这样的 Spark 数据框 id 1 2 3 sf 1 sf 2 sf 3 2 null null null 102 202 302 4 null null null 104 204 304 1 null null null
  • numpy 索引:尾随省略号不应该是多余的吗?

    在尝试正确理解 numpy 索引规则时 我偶然发现了以下内容 我曾经认为索引中的尾随省略号没有任何作用 是不是很琐碎 但事实并非如此 Python 3 5 2 default Nov 11 2016 04 18 53 GCC 4 8 5 o
  • 如何手动构建 AVDepthData

    我想构建自己的深度图并保存带有深度信息的图像 例如肖像照片 所以首先我需要生成 AVDepthData 在挖掘了它的构建方式之后 我尝试重现它 func buildDepth let info AnyHashable Any kCGImag
  • 如何访问 xsl:output 属性中的 xsl:param?

    我想允许转换器在样式表中设置一个参数来指定需要多少个缩进空间 我已经尝试了 Dimitre Novatev 在答案中的所有建议here无济于事
  • ThisWorkbook 运行时错误 438

    我有一个 VBA 将唯一值从 Sheet1 复制并粘贴到 Sheet3 上 但是 当我运行 VBA 时 出现运行时错误 438 我的 VBA 看起来像这样 Sub UniqueList Application ScreenUpdating
  • Spring Kafka 中的 Kafka 消费者/生产者测试

    我目前正在研究我正在使用的 Kafka 模块spring kafka卡夫卡通信的抽象 我能够从实际实现的角度集成生产者和消费者 但是 我不确定如何测试 特别是集成测试 消费者周围的业务逻辑 KafkaListener 我试着跟随spring
  • 在 PyCharm 上导入 NLTK 时出错

    我试图在 PyCharm 中导入 NLTK 并收到以下错误 我使用的是 Mac OS 10 5 8 和 Python 2 7 6 可能发生什么事 我对编程完全陌生 如果我缺少一些基本的东西 我很抱歉 安装软件包失败 安装软件包 nltk 时
  • 在 R 包中包含 Shiny 应用程序:传输输入参数

    我正在尝试将 Shiny 应用程序作为 R 包的一部分运行 我按照 Dean Attali 网站上列出的说明进行操作 https deanattali com 2015 04 21 r package shiny app 如该网站所示 我在
  • postgresql 中的字符串文字和转义字符

    尝试将转义字符插入表中会导致警告 例如 create table EscapeTest text varchar 50 insert into EscapeTest text values This is the first part n
  • Firebase Storage getDownloadURL 背后的目的是什么

    根据这些docs 我明白一旦我们在存储中拥有了 firebase 路径 我们就可以通过调用来获取下载网址getDownloadUrl 在这条路径上的ref 我的问题是所有文档都建议首先获取下载网址 然后根据这些图像下载文件数据 但是我们可以
  • Ionic 找不到模块“../providers/auth-service/auth-service”

    我正在尝试在 ionic Angular 3 3 0 中创建登录 注册 我收到错误无法找到模块 providers auth service auth service 在login ts 文件中 请帮忙 auth service ts im
  • 选择具有给定 id 的元素的更快方法

    我有个问题 假设我们有以下 html 标签 div I am a div div 他的div存在于dom上 它不是由javascript生成的 如果我想在 javascript 中多次使用这个 div 哪种方法更好 将其存储在如下变量中 v
  • 在 R 中哪些包可以快速加载更大的数据

    在 R 中 数据通常加载到 RAM 中 是否有任何软件包可以将数据加载到磁盘而不是 RAM 中 查看bigmemory包 以及相关包 例如bigtabulate bigalgebra biganalytics 和更多 还有ff 尽管我发现它
  • 如何沿列迭代向下相乘?

    我在这件事上遇到了困难 不知道为什么 也许现在已经很晚了 我在 pandas 中有一个数据框 如下所示 1 10 2 11 3 20 4 5 5 10 我想计算每一行上面每一行的被乘数 例如 在第 3 行 我想计算 10 11 20 即 2
  • 如何使用 Selenium WebDriver 和 Java 查找损坏的链接

    我想验证网站上的损坏链接 并且我正在使用以下代码 public static int invalidLink String currentLink String temp public static void main String arg
  • 如何禁用文本选择突出显示

    对于作用类似于按钮的锚点 例如 此 Stack Overflow 页面侧边栏上标题为问题 Tags and Users 或选项卡 是否有 CSS 标准方法可以在用户意外选择文本时禁用突出显示效果 我意识到这可以用 JavaScript 来完
  • 如何使用 C# 从另一个表单按下按钮?

    我有两种形式 Form1 进行屏幕截图 Form2 有 2 个按钮来操作 form1 创建的屏幕截图 Form1 还有一个 隐藏 按钮 其中包含保存屏幕截图的方法 我的问题 如何从form2中单击form1的按钮 和 如何检查 form1
  • 如何编写正则表达式来仅匹配数字、字母和破折号?

    我需要一个只接受以下内容的表达式 数字 普通字母 无特殊字符 空格也是不允许的 例子 正则表达式应该匹配 this is quite alright 不应该匹配 this is not so lright 您可以使用 A Za z0 9 这