Regex 如何删除提取值末尾的逗号?
我有下面的字符串Regex 如何删除提取值末尾的逗号?,regex,Regex,我有下面的字符串 {'Sample': '#it{tq}', 'Yield': 0.011063753491221462, 'Error': 0} 我想从“Sample”中提取这个值,意思是“it{tq}”。我尝试使用正则表达式:'Sample':(\s*+?\s) 但是它给了我:“#it{tq}”,包括结尾的逗号。有人知道如何删除结尾的逗号吗?这个正则表达式应该可以完成这项工作 regex:'Sample':\s*('[^']*') 使用这个怎么样: 'Sample': '(.*?)',
{'Sample': '#it{tq}', 'Yield': 0.011063753491221462, 'Error': 0}
我想从“Sample”中提取这个值,意思是“it{tq}”。我尝试使用正则表达式:'Sample':(\s*+?\s)
但是它给了我:
“#it{tq}”,
包括结尾的逗号。有人知道如何删除结尾的逗号吗?这个正则表达式应该可以完成这项工作
regex:'Sample':\s*('[^']*')
使用这个怎么样:
'Sample': '(.*?)',
请注意,接受答案中的正则表达式无法处理捕获组中包含单引号转义文本的情况,如:{'Sample':'it'{tq}}。
如果使用(.*),它会贪婪地处理两个单引号内的任何单个字符。它看起来像JSON。为什么不使用JSON解析器呢?非常感谢。但这会给我“样本”:“it{tq}”。我只需要'it{tq}@ChrisS。我已经更新了表达式。这并不能回答这个问题。若要评论或要求作者澄清,请在其帖子下方留下评论。-如果您解释了为什么这可能更有效,这将是一个更好的答案。