javascript - 使用 Javascript RegExp 匹配 "{CHARACTERS}"

标签 javascript regex pattern-matching

尽管我知道如何使用其他语言(如 C# 和 PHP)进行正则表达式匹配,但我确实在 Javascript 版本上苦苦挣扎。

我希望匹配 {ANYCHARACTERS}

它必须有:

  • { 开头
  • 一个在最后
  • 之间有 1 个或多个字符(任何字符、符号等)

到目前为止,我有以下内容:

<script type="text/javascript">

// The string that I want to perform a match on
var str = "{ASTRINGINHERE£$%^&*éáó}";

// Mt Matching expression
var patt1 = ^/{(.*){1,*}/}$/i;

// Write the matched result
document.write(str.match(patt1));

</script>

最佳答案

正如所写,您当前的模式应该会导致 javascript 语法错误。以下是我看到的问题:

  • 您的 ^ 字符位于实际正则表达式之外。
  • 您有两个正则表达式结束字符 (/)。
  • 请参阅@kopischke 关于我为何删除 {1,} 部分的回答。

这应该可以解决您的问题:

/^{(.+)}$/i

关于javascript - 使用 Javascript RegExp 匹配 "{CHARACTERS}",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11056061/

相关文章:

regex - WordPress 中的永久链接重定向和正则表达式

php - 固定长度的正则表达式后视提示可变长度的后视

javascript - 如何使用电脑本地文件在chrome中播放.mp3文件

javascript - Counter-Up 不会在 Meteor 应用程序中增加 int

regex - 如何匹配不包含单词的行

.net - Nant fileset basedir 模式

Haskell - 在模式匹配中使用常量

if-statement - `if let` 只是编写其他 `if` 语句的另一种方式吗?

javascript - 在 Threejs 中导入 *.obj 的面上移动粒子

javascript - 错误 - 放大 D3 map - d3.behavior 未定义