当前位置: 首页 > 知识库问答 >
问题:

捕获字符(包括标记之间的空格)的正则表达式

程淮晨
2023-03-14

我正在尝试分析短代码:

[shortcode]the content inside[/shortcode]

这工作得很好,因为它都是一行,但当我有多行时,我就很难捕获该组:

[shortcode]
this is 

the content
[/shortcode]

这里可以看到一个示例:http://regex101.com/r/nz1hz4

共有1个答案

满玉泽
2023-03-14

由于Javasctipt不支持DOTALL标志,您可以使用[\s\s]而不是dot使其匹配新行:

\[([^\]]*?)\]([\s\S]*?)\[\/\1\]
 类似资料:
  • 我正在尝试编写一个正则表达式,使其只有两个单词,它们之间只有一个空格。两个字都不能少于三个字符。例子:乔·史密斯

  • 问题内容: 我需要从字符串中提取两个定界符之间包含的一组字符,而不返回定界符本身。 一个简单的例子应该会有所帮助: 目标:提取方括号之间的子字符串,而不返回括号本身。 基本字串: 如果我使用以下规则。前任。 比赛是。我只需要得到(没有括号)。 有可能做到吗? 问题答案: 简单易行: 从技术上讲,这是使用先行和后备。请参阅前瞻和零宽度断言。该模式包括: 前面有一个[未捕获(向后看); 一个非贪婪的捕

  • 问题内容: 不幸的是,尽管尽我所能记住,每年尝试至少一年学习一次正则表达式,但我却经常忘记,因为我很少使用它们。今年,我新年的决心是不要再尝试学习正则表达式因此,今年,为了避免让我流泪,我将把它交给Stack Overflow_ 。 我想以这种格式传递一个字符串,然后返回该字符串。有人能协助我们坚持我的新年决议吗? 问题答案: 如果您的字符串将始终是该格式,则正则表达式会显得过大: 表示以一个字符

  • 问题内容: 当我使用某种方式时,它仍然会触发,好像连字符无效。我试着和 问题答案: 转义使用应该没问题,但是您也可以尝试将其放在字符类的开头或结尾。这应该为您工作:

  • 问题:如何首先捕获两个角色之间的组,然后再匹配匹配组中的角色? 给定输入: 问题1:我想捕获两个角色之间的组,无限次。 正则表达式解决方案: 捕获的群体: 问题2:我想匹配捕获组中的一个字符 尝试正则表达式解决方案1: 尝试的正则表达式解决方案2: 我的问题:以上尝试的解决方案都没有捕获输入字符串中的星号。我如何实现这一点?