我真的很难使用正则表达式匹配的Javascript版本,尽管知道如何在其他语言(如C#和PHP)中使用它。
我希望匹配{ANYCHARACTERS}
。
必须有:
{
}
到目前为止,我有以下内容:
<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>
答案 0 :(得分:7)
如上所述,您当前的模式应该会导致javascript语法错误。以下是我看到的问题:
^
字符在实际正则表达式之外。/
)。{1,}
部分的原因的答案。这可以解决您的问题:
/^{(.+)}$/i
答案 1 :(得分:3)
字符串开始/字符串结束代码属于正则表达式。此外,您的重复代码也不必要地复杂。最后,当您匹配任何角色时,无需指示大小写独立。这应该做:
patt1 = /^{.+}$/