javascript - 需要特定的正则表达式

标签 javascript regex

我想创建以下正则表达式:

* [ * , * ] *

其中 * 可以是任何大小的任何文本 我已经尝试过以下方法:

/[*.,.*]/

但事实并非如此 (如果重要的话,我将需要它用于 JavaScript)

正确文本的示例:

  • 测试[1,2]
  • 测试[3,测试2]

有人可以帮忙吗?

最佳答案

试试这个:

[^\[]*\[[^\]]*\]
^----^ anything but [
      ^^ - [
        ^----^ - anything but ]
              ^^ - ]

您可以选择将整个正则表达式包装在 ^$ 中以仅匹配整个字符串。

示例:

> /^[^\[]*\[[^\]]*\]$/.test("test[1,2]")
true
> /^[^\[]*\[[^\]]*\]$/.test("test[1,test2]")
true
> /^[^\[]*\[[^\]]*\]$/.test("test_wrong")
false
> /^[^\[]*\[[^\]]*\]$/.test("test[wrong")
false

关于javascript - 需要特定的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17588273/

相关文章:

javascript - 如何为 Closure 编译器设置 language_in 选项?

javascript - http请求和JavaScript

java - String.matches ("(\\w)\\1") 在对长度超过 100 的字符串进行某些执行尝试后给出不一致的结果

javascript - 搜索没有地点的 Google map 框

c# - 从 C# 调用 javascript 函数不起作用

Python re.IGNORECASE 是动态的

c# - 如何从这个字符串中获取日期?

regex - 在 VB.net 中将管道分隔文件更改为逗号分隔

python - Pandas 用正则表达式读取 csv

javascript - 使用 HTML5 和 JavaScript 导入纯文本文件