js匹配以 { 开头,以 } 结尾的字符串,且不已[{开头或以}]结尾
时间: 2023-09-29 19:05:43 浏览: 121
字符串匹配
你可以使用正则表达式来匹配以 `{` 开头,以 `}` 结尾的字符串,但不以 `[{` 开头或以 `}]` 结尾。下面是一个示例代码:
```javascript
const str = 'This is a {sample} string. {Another} example {test}. [{Invalid}] case.';
const regex = /(?<!\[\{){[^{}]*}(?!\}\])/g;
const matches = str.match(regex);
console.log(matches); // ["{sample}", "{Another}", "{test}"]
```
这里使用了负向零宽断言 `(?<!\[\{)` 和 `(?!\}\])` 来确保字符串不以 `[{` 开头或以 `}]` 结尾。然后使用 `{[^{}]*}` 匹配以 `{` 开头,以 `}` 结尾的字符串。
希望能帮到你!如有任何问题,请随时提问。
阅读全文