正则表达式查找带引号的字符串中的所有大括号

AGS

我有一个字符串:

test_str = 'This is the string and it "contains {0} a" few {1} sets of curly brackets'

我想只有找到{0}没有 {1}在这个例子中,就是在括号本身及其内容,如果只在一对双引号的。

我已经开始通过匹配双引号中的部分来解决此问题:

(?<=").*(?=")

参见https://regex101.com/r/qO0pO2/1

但我很难仅匹配该{0}部分

如何扩展此正则表达式以匹配{0}

泡泡

如果报价是平衡的,则可以使用超前检查来检查前面是否有不均衡的金额。如果您知道只有一个带引号的子字符串,请检查是否只有一个被引用"到结尾$

{[^}]+}(?=[^"]*"[^"]*$)

参见演示但是,如果有任何数量的报价零件,请检查不均匀的数量,直至结束。

{[^}]+}(?=[^"]*"(?:[^"]*"[^"]*")*[^"]*$)
  • {[^}]+}匹配括号内的内容:文字,{后跟[^}]+一个或多个}直到}
  • [^"]*" 在先行内匹配直到第一个引号
  • (?:[^"]*"[^"]*")* 后跟零个或更多平衡点,后跟任意数量的非引号
  • [^"]*$ 随后是任意数量的非引号,直到结束

请参阅regex101上的演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用正则表达式在字符串中查找多个带引号的单词

python正则表达式从多行大括号中查找字符串

正则表达式:查找大括号之间的字符串,大括号本身包含大括号

PHP 正则表达式提取带引号和括号的子字符串

如何使用正则表达式查找带引号的字符串

查找格式错误的带引号的字符串的正则表达式

正则表达式查找带引号的字母的字符串

在javascript中使用正则表达式获取两个大括号之间的所有字符串

使用正则表达式从python中的字符串中删除大括号

正则表达式用_(Sublime)替换带引号的字符串中的空格

C#正则表达式。大括号{}和mod(%)字符中的所有字符

查找所有字符串的正则表达式是在Java中以$开头的正则表达式

获取Golang正则表达式中括号内的所有子字符串

正则表达式检索带引号的字符串和引号字符

正则表达式可以匹配任何带引号的字符串或特定的不带引号的字符串

正则表达式-用开始和结束引号替换带引号的字符串

Java正则表达式,用于将带引号的字符串与转义的引号匹配

正则表达式匹配忽略双引号的带引号的字符串

使用正则表达式,提取可能包含嵌套引号的带引号的字符串

使用正则表达式捕获不带引号的双引号内的字符串

正则表达式:查找文本中的所有子字符串

使用正则表达式在字符串中查找所有出现的日期

用正则表达式查找字符串中的所有字母

使用正则表达式查找字符串中的所有匹配项

使用正则表达式查找并替换字符串中模式的所有实例

使用正则表达式查找字符串中的所有匹配项

正则表达式在长字符串中查找所有与金钱相关的值

正则表达式匹配方括号内大括号内的字符串

正则表达式:如果字符串中包含文本,则提取带有大括号括起来的单词的字符串